[英]link opencv 2.4.6 with Qt library
我在Windows 7上工作,并且安装并编译了OPENCV 2.4.6,它与Microsoft Studio 2012完美配合,因此我知道如何找到OPENCV include和lib的路径,以及如何在系统变量中配置bin的路径
但是当涉及到QT时,它完全不起作用。 我知道在stackoverflow上有很多关于如何在Windows中将opencv与QT链接的问题,但是我尝试了所有答案,但是对我来说从来没有奏效。
这是我的配置,适用于Visual Studio 2012。
系统变量路径:
包含路径:
lib路径:
我已经下载并安装了QT 5.1.1,并开始了一个项目。 在专业人士中,我像这样编辑
INCLUDEPATH += D:\Program Files\opencv\build\include \
我认为这应该工作,但是在main()中,当我添加标题时
#include "opencv/cv.h"
#include <opencv/highgui.h>
QT编译器将始终告诉我“没有此类文件或目录”
这种愚蠢的问题困扰了我好几天,我不知道哪里出了问题,有人可以帮助我。
更新:谢谢大家,吉比的回答帮助我解决了“找不到标题”的第一个问题,但是现在运行该程序,我遇到了类似“ release \\ test.exe:-1:错误:LNK1120”的问题:6个未解决的外部人员”
所以肯定是由于库的链接,我试过了
LIBS += -LD:\Program Files\opencv\build\x64\vc11\lib \
-lopencv_core246 \
-lopencv_highgui246 \
-lopencv_imgproc246 \
-lopencv_features2d246 \
-lopencv_calib3d246 \
要么
LIBS += -LD:\Program Files\opencv\build\x64\vc11\lib \
-lopencv_core246.lib \
-lopencv_highgui246.lib \
-lopencv_imgproc246.lib \
-lopencv_features2d246.lib \
-lopencv_calib3d246.lib \
LIBS += -LD:\Program Files\opencv\build\x64\vc11\lib \
libopencv_core246 \
libopencv_highgui246 \
libopencv_imgproc246 \
libopencv_features2d246 \
libopencv_calib3d246 \
但这些都不起作用
您需要使用Qt构建OpenCV。 步骤是,
D:/Qt/4.8.5/
并将其放在您的Path
环境变量中。 WITH_QT
下的CMAKE
选项。 CMAKE_INSTALL_PREFIX
D:/Program Files/opencv
,它也位于我的Path
环境变量中; 您可以相应地更改您的。 HTH
我遇到了同样的问题,并通过将项目设置为release(在qt窗口的底部左侧)而不是调试来解决它,然后将qt和opencv库复制到bin文件夹中。 设置好要构建的项目后,将在bin文件夹中生成一个.exe文件。 运行该应用程序将告诉您仍然缺少什么dll,请在opencv / build / x64 / vc11 / bin中找到opencv dll,在Qt / Qt(version)/(version)/(compiler)/ bin中找到qt
〜吉比
由于篇幅所限。
qmake可能会将“ D:\\ Program”和“ Files \\ opencv \\ build \\ include”分开考虑。
只需用双引号引起来即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.