C++ 在Windows上使用Qt和opencv生成问题
我想在WindowsXP上使用opencv创建一个带有Qt的gui应用程序。我以前使用过Qt和opencv,但从未一起使用过。长话短说,我无法让opencv与Qt一起工作 在我搜索过的所有论坛上,只有零星的信息,通常没有答案,我在这里总结了我所采取的所有步骤C++ 在Windows上使用Qt和opencv生成问题,c++,windows,qt,opencv,C++,Windows,Qt,Opencv,我想在WindowsXP上使用opencv创建一个带有Qt的gui应用程序。我以前使用过Qt和opencv,但从未一起使用过。长话短说,我无法让opencv与Qt一起工作 在我搜索过的所有论坛上,只有零星的信息,通常没有答案,我在这里总结了我所采取的所有步骤 下载了适用于Windows的Qt SDK(4.6.3),并成功使用了一段时间 下载了opencv 2.3.1 megapack for Windows,包括二进制文件。我成功地编译了包含opencv的Qt项目,但任何opencv函数调用都会
已选中)
Highgui
是失败的。问题:Qt\4.6.3\src\corelib\global\qconfig.h
未找到。我下载的源代码中根本没有qconfig.h
!我发现一些模板qconfig-large.h
,qconfig-small.h
等,所以我将其中一个模板重命名为qconfig.h
。现在我看到一个满是链接器错误的屏幕qbenchmark.h
,其中包含无法找到的qtest/qbenchmarkmetric.h
Windows-g++.cmake
文件,但它引用的Windows gcc.cmake
不存在
是否有人在Windows上构建了支持Qt的opencv,如果有,是如何实现的
编辑:
问题肯定出在Qt源上。我成功地生成了一个MinGW makefile,构建过程一直正常,直到它在src/testlib/qtestsystem.h
中停止,因为QtCore/qefersedtimer.h
中有一个include,该文件位于完全不同的目录中Qt是否发布了不完整的源代码,还是我做错了什么
Edit2
我的痛苦还在继续。我把一切都打扫干净,重新开始。这一次甚至没有尝试Visual Studio
libopencv_core231
,etv.)。我很高兴,但我很快就庆祝了,这是多么错误啊李>
.exe
。它抱怨缺少libstdc++-6.dll
.exe
所在的同一文件夹中,但两种方法都不起作用。我得到了“程序入口点_ZNSt9exceptionD2Ev在动态链接库libstdc++-6.dll中找不到”这两个选项。这是在调试中,所以我尝试发布,但我得到了一个类似的错误,没有找到其他入口点c:\Qt\mkspecs\win32-g++\QMAKE.conf
中的QMAKE\u LFLAGS=
和QMAKE\u LFLAGS\u DEBUG=
行插入了-static libgcc-static libstdc++
。即使在重新启动Qt Creator并重建之后,这也没有任何效果。如果我不复制libstdc++-6.dll
,它仍然需要它exe
运行的,不需要任何libstdc++-6.dll
,这意味着我的opencv构建负责吗?我想重新构建opencv,但我找不到任何引用libstdc++的CMake设置
这可能是个线索:
当使用一个libstdc++-6.dll
文件时,关于缺少入口点的错误会提到QtGui4.dll。我有一个调试版本,所以它应该是QtGui*d*4.dll,不是吗?调试和发布是否有不同的libstdc++
s?无论哪种方式,我都试图构建发行版,但也没有成功,同样的错误
这个星球上没有一个人在Windows xp上尝试将Qt与QtCreator和opencv 2.3一起使用并成功了吗?通过搜索所有论坛和Qt档案,我找不到任何人。我已经准备好在Linux中进行开发,但我迟早需要一个Windows版本
我试图抵制黑暗面的诱惑,黑暗面在我耳边低语,让我忘记Qt、MinGW、g++、opencv,并试图用Visual Basic拼凑一些东西。哦,恐怖 您应该从源代码构建OpenCV,正如您已经做的那样,这并不麻烦。请注意,OpenCV的最新版本可以使用和w/o Qt构建。Highgui可以选择使用Qt!您可以选择是否使用Qt进行构建 很长一段时间以来,我一直在使用Qt库和OpenCV。我从来没有使用过SDK,相反,我
CMake Error at C:/Program Files/CMake 2.8/share/cmake-2.8/Modules/Platform/Windows-g++.cmake:1 (INCLUDE):
include could not find load file:
C:/Program Files/CMake 2.8/share/cmake-2.8/Modules/Platform/Windows-gcc.cmake
Call Stack (most recent call first):
C:/Program Files/CMake 2.8/share/cmake-2.8/Modules/CMakeCXXInformation.cmake:59 (INCLUDE)
find_package(OpenCV)
find_package(Qt4 ${VOLE_MINIMUM_QT_VERSION} COMPONENTS QtCore QtGui)
find_package(Qt4 ${VOLE_MINIMUM_QT_VERSION} COMPONENTS QtOpenGL)
qt4_wrap_cpp(moc_sources ${vole_module_moc_sources})
qt4_wrap_ui(uic_sources ${vole_module_ui_sources})
qt4_add_resources(rcc_sources ${vole_module_rcc_sources})