RHEL 5安裝arm-linux-gcc-4.4.3.tar.gz後,編譯報/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found 錯,解決辦法!
arm-linux-gcc-4.4.3下載地址:
下載在Linux公社的1號FTP服務器裡,下載地址:
FTP地址:ftp://www.linuxidc.com
用戶名:www.linuxidc.com
密碼:www.muu.cc
在 2011年LinuxIDC.com\10月\Android系統移植-創建ARM-Linux交叉編譯環境
下載方法見 http://www.linuxidc.net/thread-1187-1-1.html
問題:RHEL 5安裝arm-linux-gcc-4.4.3.tar.gz後,make不能通過,報如下錯誤:
“/usr/local/arm/4.4.3/bin/../libexec/gcc/arm-none-linux-gnueabi/4.4.3/cc1: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/local/arm/4.4.3/lib/libppl_c.so.2)
/usr/local/arm/4.4.3/bin/../libexec/gcc/arm-none-linux-gnueabi/4.4.3/cc1: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/local/arm/4.4.3/lib/libppl.so.7)
make[1]: *** [hello_world.o] Error 1
make[1]: Leaving directory `/home/u-boot-2009.08-21/examples/standalone'
make: *** [examples/standalone] Error 2”
解決辦法:
# strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_FORCE_NEW
您會發現正是缺少:GLIBCXX_3.4.9版本。
# ll /usr/lib/libstdc++.so.6
lrwxrwxrwx 1 root root 18 Jul 3 2010 /usr/lib/libstdc++.so.6 -> libstdc++.so.6.0.8
其實這裡需要將libstdc++.so.6鏈接到更高版本的libstdc++.so.6.0.10。
下載libstdc++.so.6.0.10,下載地址在Linux公社的1號FTP服務器裡,下載地址:
FTP地址:ftp://www.linuxidc.com
用戶名:www.linuxidc.com
密碼:www.muu.cc
在 2011年LinuxIDC.com\6月\RHEL 5安裝arm-linux-gcc-4.4.3.tar.gz後報錯解決辦法
下載方法見這裡 http://www.linuxidc.net/thread-1187-1-1.html
然後把/usr/lib/libstdc++.so.6 -> /usr/lib/libstdc++.so.6.0.8
軟鏈接刪除(rm -rf /usr/lib/libstdc++.so.6),重新鏈接ln -s /usr/lib/libstdc++.so.6.0.10 /usr/lib/libstdc++.so.6。
# ll /usr/lib/libstdc++.so.6
lrwxrwxrwx 1 root root 28 Jun 18 18:43 /usr/lib/libstdc++.so.6 -> /usr/lib/libstdc++.so.6.0.10
重新編譯,則上述“/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found ”問題解決。