您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)Linux系統(tǒng)中提示/usr/bin/ld: cannot find -lxxx錯(cuò)誤怎么辦,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
在linux環(huán)境編譯應(yīng)用程式或lib的source code時(shí)常常會(huì)出現(xiàn)如下的錯(cuò)誤訊息:
/usr/bin/ld: cannot find -lxxx
這些訊息會(huì)隨著編譯不同類型的source code 而有不同的結(jié)果出來(lái)如:
代碼如下:
/usr/bin/ld: cannot find -lc
/usr/bin/ld: cannot find -lltdl
/usr/bin/ld: cannot find -lXtst
其中xxx即表示函式庫(kù)文件名稱,如上例的:libc.so、libltdl.so、libXtst.so。
其命名規(guī)則是:lib+庫(kù)名(即xxx)+.so。
會(huì)發(fā)生這樣的原因有以下三種情形:
1 系統(tǒng)沒(méi)有安裝相對(duì)應(yīng)的lib
2 相對(duì)應(yīng)的lib版本不對(duì)
3 lib(.so檔)的symbolic link 不正確,沒(méi)有連結(jié)到正確的函式庫(kù)文件(.so)
解決方法:
(1)先判斷在/usr/lib 下的相對(duì)應(yīng)的函式庫(kù)文件(.so) 的symbolic link 是否正確
若不正確改成正確的連結(jié)目標(biāo)即可解決問(wèn)題。
(2)若不是symbolic link 的問(wèn)題引起,而是系統(tǒng)缺少相對(duì)應(yīng)的lib安裝lib即可解決。
(3)如何安裝缺少的lib:
以上面三個(gè)錯(cuò)誤訊息為例:
代碼如下:
錯(cuò)誤1缺少libc的LIB
錯(cuò)誤2缺少libltdl的LIB
錯(cuò)誤3缺少libXtst的LIB
以Ubuntu為例:
先搜尋相對(duì)應(yīng)的LIB再進(jìn)行安裝的作業(yè)如:
代碼如下:
apt-cache search libc-dev
apt-cache search libltdl-dev
apt-cache search libXtst-dev
實(shí)例:
在進(jìn)行輸入法gcin的Source Code的編譯時(shí)出現(xiàn)以下的錯(cuò)誤訊息:
代碼如下:
/usr/bin/ld: cannot find -lXtst
經(jīng)檢查后發(fā)現(xiàn)是:
lib(.so檔)的symbolic link 不正確
解決方法如下:
代碼如下:
cd /usr/lib
ln -s libXtst.so.6 libXtst.so
如果在/usr/lib的目錄下找不到libXtst.so 檔,那么就表示系統(tǒng)沒(méi)有安裝libXtst的函式庫(kù)。
解法如下:
apt-get install libxtst-dev
關(guān)于“Linux系統(tǒng)中提示/usr/bin/ld: cannot find -lxxx錯(cuò)誤怎么辦”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。