‘GLIBCXX_3.4.9’not found解决方案
在编译某些源码的时候,会提示glibc的版本较低,需要更新的消息。提示/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9'not found。
终端输入:strings /usr/lib/libstdc++.so.6| grep GLIBC,回车执行
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
GLIBC_2.3
GLIBC_2.0
GLIBC_2.4
GLIBC_2.1
GLIBC_2.1.3
GLIBC_2.2
GLIBCXX_FORCE_NEW
返回结果没有`GLIBCXX_3.4.9',接着输入:ls-l /usr/lib/libstdc++.so.6,回车执行
[root@localhost ~]# ls -l/usr/lib/libstdc++.so.6
lrwxrwxrwx 1 root root 18 02-13 19:06/usr/lib/libstdc++.so.6 -> libstdc++.so.6.0.8
这里libstdc++.so.6是个软链接,它链接到libstdc++.so.6.0.8。而libstdc++.so.6.0.8没有`GLIBCXX_3.4.9',这里需要libstdc++.so.6.0.10。那么从网上下载libstdc++.so.6.0.10文件,放到/urs/lib目录下。然后我们重新做libstdc++.so.6.软链接:
1.删除libstdc++.so.6,终端输入:rm -rf /urs/lib/libstdc++.so.6,回车执行
2..重做libstdc++.so.6软链接,终端输入:ln -s/urs/lib/libstdc++.so.6.0.10/urs/lib/libstdc++.so.6,回车执行
如果是64位的,则要找个64位的放到/usr/bin/lib64目录下