天天看點

usr/bin/ld: cannot find 錯誤解決方法

參考:http://blog.siyebocai.cn/20100324_5p424qs7.html

   通常在軟體編譯時出現的usr/bin/ld: cannot find -lxxx的錯誤,主要的原因是庫檔案并沒有導入的ld檢索目錄中。

   解決方式:

  1。确認庫檔案是否存在,比如-l123, 在/usr/lib, /usr/local/lib,或者其他自定義的lib下有無lib123.so, 如果隻是存在lib123.so.1,

       那麼可以通過ln -sv lib123.so.1   lib123.so,建立一個連接配接重建lib123.so.

   2。檢查/etc/ld.so.conf中的庫檔案路徑是否正确,如果庫檔案不是使用系統路徑,/usr/lib, /usr/local/lib, 那麼必須在檔案中加入。

   3。ldconfig 重建ld.so.cache檔案,ld的庫檔案檢索目錄存放檔案。尤其剛剛編譯安裝的軟體,必須運作ldconfig,才能将新安裝的

庫檔案導入ld.so.cache.

如果以上方法還是不行,可以采用 軟連接配接的方式,比如 ln -s /usr/local/BerkelyDB5.3.25/lib/libdb.so /usr/lib/libdb.so

   4。測試,gcc -l123 --verbose.

繼續閱讀