2013-12-14 224 views
3

我想包括预编译(MSVC2012)OpenCV的静态库到Qt Creator的,但我不能确定包含路径是关于按照这一形象:http://i.stack.imgur.com/Pmsqq.png包含用于在Qt Creator中添加外部库的路径?

这里是预编译的OpenCV文件的形象,我下载了:http://i.stack.imgur.com/vNRNt.png

有3个目录:bin包含DLL,lib包含小的lib文件(2 kb),这样QtCreator可以理解DLL,而staticlib包含大型lib文件(1 MB)我试图链接。

库文件/路径类似C:\opencv\build\x86\vc11\staticlib\opencv_features2d247d.lib,对吧?大约有50个lib文件。我需要手动每个人吗?

+2

包含路径是库的标题所在的位置。如果有一个文件夹youropencvinstall/include/opencv/opencv.h(这是一个例子,我不知道OpenCV的布局),include路径将是youropencvinstall/include /。从你的截图看来,你似乎错过了包含。 –

+0

谢谢。我知道了。 – user3103152

回答

6

请参阅include pathlibs的文档。

另请注意,您需要在调试版本和其他版本中使用'd'结尾的文件(如果您使用x86和x64版本,则应使用正确的库),这里是一个示例从测试的.pro(我只用x86和VC10):

INCLUDEPATH += D:\\ProgrammingTools\\opencv\\build\\include 

CONFIG(debug, debug|release) { 
LIBS += -LD:\\ProgrammingTools\\opencv\\build\\x86\\vc10\\lib\ 
    -lopencv_core246d\ 
    -lopencv_highgui246d\ 
    -lopencv_imgproc246d\ 
    -lopencv_features2d246d\ 
} 
else { 
LIBS += -LD:\\ProgrammingTools\\opencv\\build\\x86\\vc10\\lib\ 
    -lopencv_core246\ 
    -lopencv_highgui246\ 
    -lopencv_imgproc246\ 
    -lopencv_features2d246\ 
} 

注意到有-L__NO_SPACE_ PATHTOLIB和-L _NOSPACE__libname,你不需要添加所有的LIB文件,只添加你使用的功能和样品包括这样的文件:

#include <opencv2/opencv.hpp> 

所以包含路径在包含两个文件夹(不是实际头文件)的文件夹中结束

相关问题