本文主要是介绍/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21‘ not found (required by,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在centos 7上运行某个可执行程序时,提示如下的错误:
./ise_c2r: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by ./ise_c2r)
./ise_c2r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by ./ise_c2r)
./ise_c2r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./ise_c2r)
./ise_c2r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by ./librocksdb.so.6.15)
./ise_c2r: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by ./librocksdb.so.6.15)
./ise_c2r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./librocksdb.so.6.15)
出现上述错误的原因是安装了高版本的GCC之后没有更新软连接,只需要查找安装GCC时生成的最新动态库,然后添加软连接即可。
find / -name "libstdc++.so*"
输出如下
可以看到在/usr/lib64里面libstdc++.so.6是软连接到libstdc++.so.6.0.19的,而同时也可以看到在/usr/local/lib64里面有libstdc++.so.6.0.21的,所以我进行了如下操作:
cp /usr/local/lib64/libstdc++.so.6.0.21 /usr/lib64
cd /usr/lib64
ln -snf libstdc++.so.6.0.21 libstdc++.so.6
这样就把libstdc++.so.6软连接到了libstdc++.so.6.0.21,再次执行可以执行程序,发现错误消失,程序正常执行。
这篇关于/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21‘ not found (required by的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!