/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found的解决办法

时间:2022-12-10 15:30:28
原因
缺少GLIBCXX_3.4.15版本,或是更高的版本。
场景描述
在CentOS 6.6 64bit上我将gcc从4.4.7版本升级到4.8.2以便让其支持c++11标准,然后我编译llvm-clang源码时出现了这个错误
解决过程
使用strings命令来查看报错的动态库/usr/lib64/libstdc++.so.6中是否含有GLIBCXX_3.4.15?
strings /usr/lib64/libstdc++.so.6|grep GLIBCXX
考虑到我刚刚升级gcc,我继续查找其它目录下的同名库

strings /usr/local/lib64/libstdc++.so.6|grep GLIBCXX

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found的解决办法

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found的解决办法

这里该有的都有了,把这份软链到正确的地方,就妥了。
ls -ls /usr/lib64/libstdc++.so*
ls -ls /usr/local/lib64/libstdc++.so*
cp /usr/local/lib64/libstdc++.so.6.0.18 /usr/lib64/
cd /usr/lib64
rm -f libstdc++.so.6
ln -s libstdc++.so.6.0.18 libstdc++.so.6 

ls -l libstdc++*

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found的解决办法

参考文献
[1].http://www.cnblogs.com/weinyzhou/p/4983306.html