最近寫(xiě)一個(gè)調(diào)用二維碼生產(chǎn)庫(kù)的程序枫疆,下載例程后發(fā)現(xiàn)里面的動(dòng)態(tài)鏈接庫(kù)是window平臺(tái)的,自己的MAC用不了
第一想法是不用動(dòng)態(tài)鏈接庫(kù),直接使用源文件该酗,在.pro文件中加入
INCLUDEPATH += ../qrencode/
發(fā)現(xiàn)可以將頭文件包含進(jìn)來(lái)也可以查看源文件逸爵,但是編譯不通過(guò)
然后開(kāi)始查找怎么制作mac下的.dylib動(dòng)態(tài)鏈接庫(kù)具滴,在shell下用
gcc -shared a.c -o 命令無(wú)法通過(guò)編譯
后來(lái)在第三方庫(kù)的源碼中有一個(gè)使用文檔,說(shuō)明了安裝方法痊银,也就是生成自己平臺(tái)的鏈接庫(kù)抵蚊。先將工作目錄設(shè)置到源碼目錄,然后./configure
溯革,這個(gè)命令是檢查安裝環(huán)境的贞绳,應(yīng)該是檢查依賴庫(kù)的,沒(méi)有通過(guò)致稀,查了一下用./configure --without-tools
通過(guò)冈闭,然后make
,make install
抖单,大功告成萎攒,在local文件夾下生成了.dylib文件,將文件復(fù)制到項(xiàng)目目錄下矛绘,在.pro文件中添加#LIBS+= -L"$$PWD/" -llibqrencode
提示找不到文件耍休,查閱資料無(wú)果,使用絕對(duì)路徑試試LIBS+= "$$PWD/libqrencode.dylib"
編譯通過(guò)货矮,成功運(yùn)行羊精。
留坑
- c++中直接調(diào)用c的方法
- configuere的作用和使用方法
- linux 下編譯很多個(gè)文件和生成庫(kù)或程序的方法
- includepath和dependpath的區(qū)別,libs的寫(xiě)法
- qt下生成動(dòng)態(tài)鏈接庫(kù)的方法