linux下qt使用第三方庫的那些事

關於在linux下使用第三方庫,對於新手來講老是折騰的尼瑪的痛苦(我就是新手)。因此爲了給你們指引怎麼正確使用第三方庫,本篇特地介紹qt是怎麼搭建第三方環境開發的。linux

  • 開發庫查看工具:$sudo apt-get install pkg-config
    不少時候咱們並不知道本身電腦有沒有這個庫,因此咱們可使用這個工具來查看本身有哪些工具,或者哪些工具沒有。同時,qmake是對這個工具配置支持的,因此咱們不少時候很方便的使用這個。工具

圖片描述
圖片描述
從截圖能夠看出咱們能夠經過這個工具查到本身的庫的所在位置,還有它所依賴的其餘庫。spa

  • 開發庫的一些標準:
    圖片描述code

上面截圖是一個配置poppler-qt5 和ffmpeg這兩個開發庫的配置文件列表,咱們發現這裏有用到了LIBS+=還有PKGCONFIG+=這兩個東西,他們有什麼區別呢?其實他們都作了相同的事情,就是告訴qt 找到對應的庫目錄。LIBS是一個比較簡單原始的辦法,咱們能夠直接在後面加庫的路徑,以能夠經過-l參數直接加入庫的名稱。PKGCONFIGz這個實際上是qt對pkg-config的支持,你們看到CONFIG+= .... link_pkgconfig這個參數,其實它就是qmake會自動執行pkg-config這個工具,找到對應的庫文件目錄,根據的是PKGCONFIG+= poppler-qt5這一行命令。爲啥有些會用LIBS+= ,然而有些用PKGCONFIG?其實兩個均可以任選一個,只要使用正確就行了。只是PKGCONFIG提供了更高級的用法,你們注意後面的庫文件沒有前綴lib,那是應爲pkg-config工具作的事情,將其簡化了,不少庫均可以直接這樣用。固然有些庫是沒有的,至於有沒有,咱們能夠直接使用命令pkg-config --cflags ××× 來驗證它是否存在就行了。圖片

  • 第三方庫的下載,咱們在用某個東西,qt編譯報錯提示找不到庫的時候,不要急,使用apt-cache search 命令模糊搜索這個庫具體是什麼,而後sudo apt-get install lib*-dev就好了。好比qt編譯時候報錯:cannot find -lavcodec ,咱們能夠進終端:apt-cache search avcode ,而後找到libavcode-dev 這個,複製下來安裝:sudo apt-get install libavcodec-dev。開發

好了,只要知道這些庫的原因,咱們就能夠方便使用第三方庫啦!有這些概念去配置第三方庫基本均可以本身解決了!固然有些第三方庫是c的,咱們在包含他的頭文件的時候不要忘了使用extern c{}這個來包含,否則編譯照樣報錯。get

相關文章
相關標籤/搜索