Qt Creator 引入第三方庫如何寫PRI檔案

annjeff發表於2019-02-27

Qt Creator 引入第三方庫(openCV)如何寫PRI檔案


0.開篇語

在使用Qt Creator進行書寫Qt程式碼時經常會使用第三方的開源庫(例如:openCV;ITK;VTK;Dcmtk等)。那麼如何引入第三方開源庫,成為了一個阻止同學們學習第三方庫的障礙,當初我也被這個問題所困惑,因此寫下此篇部落格,為新入門者提供一些指導。[由於本人水平有限,可能提供的解決方案不夠優化,希望路過的大神指正或提供更優方案。本人郵箱:annjeff@163.com]。本文以opencv庫為例,其他庫以此類比即可。

1.在windows系統應用【簡單版本】

首先,寫一個opencv.pri,此檔案可以直接儲存在opencv庫所在資料夾,也可放於任意目錄。opencv.pri的內容為:

INCLUDEPATH += D:/OpenCV/opencv/build/include/
DEPENDPATH += D:/OpenCV/opencv/build/x64/vc15
win32:CONFIG(release, debug|release): LIBS += -LD:/OpenCV/opencv/build/x64/vc15/lib/ -lopencv_world400
else:win32:CONFIG(debug, debug|release): LIBS += -LD:/OpenCV/opencv/build/x64/vc15/lib/ -lopencv_world400d

INCLUDEPATH是opencv庫的include資料夾所在目錄

注意:在Qt Creator中使用的目錄分隔符是'/'與Windows平臺的分隔符相反

此時,在專案的PRI檔案中直接引入此檔案即可。例如,我在寫Hello_OpenCV,此時,我需要在Hello_OpenCV.pri中新增一條引入檔案語句即可。

include(D:/OpenCV/opencv.pri)

這種方式可以將三方庫正確新增,親測有效。

2.Windows、Linux、Mac三主流系統同時可用版

這種三系統相容寫法,也很方面僅僅是第二步時,有所變動而已即在Hello_OpenCV.pri檔案中新增如下語句。

win32: { include("D:/OpenCV/opencv.pri") } 
unix: !macx { CONFIG += link_pkgconfig PKGCONFIG += opencv } 
unix: macx { INCLUDEPATH += "/usr/local/include" LIBS += -L"/usr/local/lib" \ -lopencv_world }

win32:Windows作業系統(...,win8,win10...)的桌面應用程式

unix: !macx :Linux作業系統

unix: macx :macOS作業系統

相關文章