强烈向大家推荐一个好网站,【我要自学网】,教程由在校老师录制,有办公会计、平面设计、室内设计、机械设计、网页编程、影视动画等教程.....让你足不出门,都可以体验学校的专业教育!
在执行程序出现这个问题有两种情况
原因1:已经安装过高版本但未软连接
解决方法:查找编译gcc时生成的最新动态库
find / -name "libstdc++.so*"
输出:
cd /usr/lib64
ll stdlibc++*
以看到当前libstdc++so.6
指向13的版本,接下来把刚刚的高版本的复制到这里并重建软链即可
rm libstdc++.so.6
ln -s libstdc++.so.6.0.21 libstdc++.so.6
现在再执行就ok了!
原因2:版本低
解决方法:
- 查看gcc版本中包含哪些库。
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
从网上下载高版本的libstdc++.so.6.0.13以上的版本,比如libstdc++.so.6.0.21。(或者从其它机器上拷贝一份)
cd /usr/lib64
ll stdlibc++*
cp ../libstdc++.so.6.0.21 .
rm libstdc++.so.6
ln -s libstdc++.so.6.0.21 libstdc++.so.6
在查看发现已经升级
再次执行发现已经没有问题了!