Qt--在.pro文件中添加链接库的写法
要在Qt中使用OpenCV,按照OpenCV與Qt的環(huán)境搭建及Demo中的步驟配置了Qt Creator的編譯選項(xiàng),選擇MSVC,再修改.pro文件:
INCLUDEPATH += D:\Program Files\opencv\opencv3.4.0\build\include
?
CONFIG(debug, debug|release): {
LIBS += -LD:\Program Files\opencv\opencv3.4.0\build\x64\vc14\lib \
-lopencv_world340d
} else:CONFIG(release, debug|release): {
LIBS += -LD:\Program Files\opencv\opencv3.4.0\build\x64\vc14\lib \
-lopencv_world340
}
?
結(jié)果qmake沒(méi)什么問(wèn)題,編譯時(shí)報(bào)錯(cuò)了……提示“LNK1146: 沒(méi)有用選項(xiàng)“/LIBPATH:”指定的參數(shù)”
?百度之,發(fā)現(xiàn)問(wèn)題是我的路徑名里有空格(點(diǎn)也不行)。INCLUDEPATH直接加上雙引號(hào)就行,而對(duì)于鏈接庫(kù),CSDN里給的解決方法都是使用MSVC的#pragma comment,但這樣對(duì)跨平臺(tái)有點(diǎn)影響啊……
無(wú)奈只好去找.pro文件編寫(xiě)的官方文檔,在 Variables | qmake Manual這里我找到了想要的內(nèi)容:
那么第一個(gè)-L用雙引號(hào)加上就行啦~
修改并使編譯成功的代碼:
INCLUDEPATH += "D:\Program Files\opencv\opencv3.4.0\build\include"
?
CONFIG(debug, debug|release): {
LIBS += "-LD:\Program Files\opencv\opencv3.4.0\build\x64\vc14\lib" -lopencv_world340d
} else:CONFIG(release, debug|release): {
LIBS += "-LD:\Program Files\opencv\opencv3.4.0\build\x64\vc14\lib" -lopencv_world340
}
/*****************************
QT Creator 添加外部庫(kù)的方法:
1.代碼撰寫(xiě)
1.1 附加頭文件包含目錄
1.1.1 INCLUDEPATH += ./boost/include \
src/thirdpart/include? ? ? ? ? ? //用相對(duì)路徑的方法包含了兩include
1.1.2 INCLUDEPATH += D:/boost/include \
E:/vms/include? ? ? ? ? ? ? ? ? ? ?//使用絕對(duì)路徑包含兩個(gè)include
1.2 鏈接庫(kù)
1.2.1 LIBS += -LD:/vms/Libraries/ -lib1 \?
? -LD:/vms/Libraries/ -lib2 \? ? ? ? ? ? ? ? ? ? //注意 -L 以及跟路徑間沒(méi)有空格
1.2.2??LIBS += D:/vms/Libraries/lib1 \? ? ? ? ? ? ? ? ? ? ? ? ?//使用絕對(duì)路徑?jīng)]有-L -l
? ? ? ?1.2.3 LIBS += $$PWD/Libraries/lib1 \? ? ? ? ? ? ? ? ? ? ? ? //相對(duì)路徑(只適用于windows的靜態(tài)庫(kù))
注意(.lib? .a是靜態(tài)庫(kù) ; .so 是動(dòng)態(tài)庫(kù)) , 對(duì)于配置了動(dòng)態(tài)庫(kù)的必須把相應(yīng)的dll至于exe執(zhí)行目錄或者在環(huán)境變量中配置路徑
2. 通過(guò)右鍵項(xiàng)目,點(diǎn)擊添加庫(kù)(不知道為什么有時(shí)候可以,有時(shí)候不行)
選擇外部庫(kù)
?/*************************
win32 { INCLUDEPATH += 'C:/Program Files (x86)/IVI Foundation/VISA/WinNT/Include' LIBS+='C:/Program Files (x86)/IVI Foundation/VISA/WinNT/lib/msc/visa32.lib' }/***********************
#INCLUDEPATH += E:\whh\softTool\Qt\files\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\include #INCLUDEPATH += E:\whh\softTool\Qt\files\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\include\opencv2#LIBS += E:\whh\softTool\Qt\files\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\x64\mingw\bin\libopencv_*.dll INCLUDEPATH +=.\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\include INCLUDEPATH += .\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\include\opencv2LIBS += .\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\x64\mingw\bin\libopencv_*.dll總結(jié)
以上是生活随笔為你收集整理的Qt--在.pro文件中添加链接库的写法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 文件系统:使用 yum 安装软件包
- 下一篇: 解决: /bin/sh: 1: jav