2010-05-25 54 views
1

我冒險進入C++和Linux的世界,並且遇到了與共享庫鏈接的問題。無法從/ usr/local/lib訪問本地共享庫

我有一個庫,libicuuc.so.44.1,安裝在/usr/local/lib。同一個目錄中還有一個鏈接,libicuuc.so.44指向該庫。

/etc/ld.so.conf寫着:

include /etc/ld.so.conf.d/*.conf 

我有一個文件,/etc/ld.so.conf.d/libc.conf,包含:

# libc default configuration 
/usr/local/lib 

然而,當我編譯我的程序(包括LIBS += -licuuc),我得到以下錯誤在運行時:

加載共享庫時出錯: libicuuc.so.44:無法打開共享 對象文件:沒有這樣的文件或目錄

我在Ubuntu 10.04使用Qt的創造者。

任何幫助,非常感謝!

回答

5

您是否自己修改/etc/ld.so.conf.d/libc.conf?

如果是,那麼運行(以root身份)ldconfig重新讀取配置。

+0

謝謝 - 就是這樣。我沒有手修改它; 'make install'必須完成它,並且我不知道'ldconfig'命令。感謝幫助! – 2010-05-25 13:48:20

+0

似乎我每次在/ usr/local/lib中安裝新的.so後都必須運行'sudo ldconfig'。 – jamadagni 2014-03-26 11:36:01