天天看點

linux找不到動态連結庫 .so檔案的解決方法

如果使用自己手動生成的動态連結庫.so檔案,但是這個.so檔案,沒有加入庫檔案搜尋路勁中,程式運作時可能會出現找不到動态連結庫的情形。

可以通過ldd命名來檢視可執行檔案依賴的動态連結庫,如下(其中d為可執行程式):

linux找不到動态連結庫 .so檔案的解決方法

 其中的libjson_linux-gcc-4.6_libmt.so cannot found。

解決這個問題:

 (1)在系統中查找這個檔案(當然要保證系統中已經有這個.so檔案,隻是查找路徑沒有設定正确而已):

  sudo find / -name libjson_linux-gcc-4.6_libmt.so

  結果:/home/liu/desktop/jsoncpp-src-0.5.0/libs/linux-gcc-4.6/libjson_linux-gcc-4.6_libmt.so

(2)将.so檔案路徑的目錄添加到<code>/etc/ld.so.conf</code>

   sudo<code>vim /etc/ld.so.conf</code>

  檔案末尾新添加一行,/home/liu/desktop/jsoncpp-src-0.5.0/libs/linux-gcc-4.6

(3)使得修改生效

  sudo /sbin/ldconfig

這樣就不會有那個找不對.so檔案的錯誤啦。

參考:http://www.blogjava.net/zhyiwww/archive/2007/12/14/167827.html