2011-05-06 254 views
5

我試圖在CentOS 5.5(最終版)下構建GCC 4.6。我新建了GMP-5.0.1,MPC-0.9和MPFR-3.0.1,並且使用了以下配置命令:構建GCC 4.6 - libmpfr.so.4 - 無法打開共享對象文件

../configure --prefix =/users/xxxx/apps/mygcc4.6 --disable-checking --enable-threads = posix --enable-languages = c,C++,fortran --with-mpfr =/users/xxxx/code/gcc/mpfr-3.0.1-install-cyprus --with-gmp =/users/xxxx/code/gcc/gmp-5.0.1-install-cyprus --with-mpc =/users/xxxx/code/gcc/mpc-0.9-install-cyprus

之後,我運行make,約5分鐘後得到以下錯誤信息:

檢查目標文件的後綴... configure:error:in /users/xxxx/code/gcc/gcc-4.6.0/obj/x86_64-unknown-linux-gnu/libgcc': configure: error: cannot compute suffix of object files: cannot compile See config.log'以獲取更多詳細信息。

的的config.log表明最近生成的程序(CC1)涉及:

/users/xxxx/code/gcc/gcc-4.6.0/obj/./gcc/cc1

事實上,如果我不帶任何參數我得到的config.log發現了同樣的錯誤消息,運行此程序:

錯誤而載入共享庫:libmpfr.so.4:無法打開共享對象文件:沒有這樣的文件或目錄

但是,libmpfr.so.4位於提供的使用--with-mpfr標誌進行配置的lib子目錄中,如上所示。我有LD_LIBRARY_PATH和LIBRARY_PATH空。任何想法我怎麼能通過這個錯誤?

回答

5

確保您的磁帶庫在指定的目錄中執行,而不是在某些lib子目錄中。使用export LD_LIBRARY_PATH=/users/xxxx/code/gcc/mpfr-3.0.1-install-cyprus,因爲你已經建議;-)

+0

謝謝。我曾嘗試設置'LD_LIBRARY_PATH',但不小心沒有到lib子目錄。好吧,它看起來像GMP也應該在那裏,所以我現在嘗試所有三個... – user2023370 2011-05-06 09:08:52

+0

它的工作:'出口LD_LIBRARY_PATH = /用戶/ XXXX /代碼/ GCC/MPFR -3.0.1安裝塞浦路斯/ LIB:/users/xxxx/code/gcc/gmp-5.0.1-install-cyprus/lib:/用戶/ XXXX /代碼/ GCC/MPC-0.9安裝 - 塞浦路斯/ lib' – user2023370 2011-05-06 11:30:50

3

我知道這個線程是相當過時的。但是,我不得不發表評論,並說,經過5個多小時的時間,我的頭撞牆上一個非常類似的問題(檢查後綴的目標文件...配置:錯誤:無法計算後綴的目標文件:無法編譯)和在閱讀安裝手冊,大量論壇以及嘗試系統上的各種問題之後,我發現這篇簡短但非常有用的文章。該問題與LD_LIBRARY_PATH完全相關。 長話短說,當從源代碼構建時,如果您點擊此壁,則會導出LD_LIBRARY_PATH變量以指向庫的源構建目錄。無論如何,爲我工作。

祝你好運。

相關問題