天天看點

linux undefined reference to 'libiconv'

報錯 undefined reference to ‘libiconv’ undefined reference to ‘libiconv_open’ undefined reference to ‘libiconv_close’

這種報錯一般有兩種情況

一、環境變量裡面的 LIB_LIBRARY_PATH這個預設路徑有問題

輸入指令 $ env|grep LIB 會看LIB_LIBRARY_PATH=/oracle/app/oracle/product/11.2.0/dbhome_1/lib:/usr/lib:/oracle/app/oracle/product/11.2.0/lib32

QTLIB=/usr/lib64/qt-3.3/lib

我的系統裡面能看到這些,各自的系統裡面看到的不一樣,因為每個使用者在庫裡面安裝的庫不一樣,看到的路徑就不一樣

在使用者根目錄下進入環境變量檔案裡面

進入到 .bash_profile 裡面找到 LIB_LIBRARY_PATH 變量在末尾加 ‘:’ 符号,接着加上你要的庫的路徑 例如”:/usr/lib”。

修改好之後儲存重新登入就可以了

二、就是系統沒有這個庫,可以在網上下載下傳 libiconv庫進行安裝

安裝後在重新編譯程式,如果還是同樣的錯誤,請進行第一種情況的操作并在 編譯指令後加 -liconv ,如果makefile裡面也一樣要加

這樣問題就可以解決了

繼續閱讀