在我的Windows机器上使用Qt Creator和图像处理库openCV编译和构建程序时遇到配置问题。 OpenCV不久前使用Visual Studio工作,但现在我想用Qt Creator构建程序。我正在使用opencv-2.4.11和Qt Creator 3.3.2 我启动了一个新程序并尝试编译以下代码:
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv/cv.h>
using namespace std;
using namespace cv;
int main()
{
cout << "Hello World!" << endl;
Mat Bild;
return 0;
}
此构建过程以错误结束:
C:... \ build-Test01-Desktop_Qt_5_4_1_MinGW_32bit-Debug \ debug \ main.o:-1:在函数ZN2cv3MatD1Ev':
C:\opencv\build\include\opencv2\core\mat.hpp:278: Fehler: undefined reference to
cv :: fastFree(void *)'
C:... \ build-Test01-Desktop_Qt_5_4_1_MinGW_32bit-Debug \ debug \ main.o:-1:在函数ZN2cv3Mat7releaseEv':
C:\opencv\build\include\opencv2\core\mat.hpp:367: Fehler: undefined reference to
cv :: Mat :: deallocate()'
collect2.exe:-1:Fehler:错误:ld返回1退出状态
我的.pro文件包含“INCLUDEPATH”和“LIBS”:
INCLUDEPATH += C:\opencv\build\include\ \
C:\opencv\sources\include\
LIBS += -L C:\opencv\build\x86\vc12\lib\
-lopencv_core2411\
-lopencv_calib3d2411\
-lopencv_highgui2411\
-lopencv_imgproc2411\
SOURCES += main.cpp
我做错了什么 - 为什么我总是收到错误:(?
我还尝试了不同的其他方法来定义包含文件夹和库,但我无法编译测试代码。
问候
MATL
答案 0 :(得分:0)
您正在使用MinGW编译器,而OpenCV提取并不包含由它构建的库。因此,您必须使用Qt提供的MinGW手动构建它们。请使用以下帖子获取帮助:
How to link opencv in QtCreator and use Qt library
确保正确设置Qt,MinGW和OpenCV库的所有环境变量。完成所有这些后,你应该全力以赴。
希望这有帮助。