在启动某个应用程序时候,有时候会报“GLIBCXX***”的错误
这是由于应用运行环境中依赖的库没有找到,或者找到了对应的库,但是版本太低的问题
示例:我在centos运行一个srs的报错,
解决思路是:
一查看是否有这个库/lib64/libstdc++.so.6
二查看这个库/lib64/libstdc++.so.6中的的GLIBCXX的支持的版本
查看是否有这个库/lib64/libstdc++.so.6
经查看是环境里已经有这个库,并且是个软连接,软连接到libstdc++.so.6.0.19
查看这个库/lib64/libstdc++.so.6中的的GLIBCXX的支持的版本
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX*
查看这个库/lib64/libstdc++.so.6(libstdc++.so.6.0.19 )并不支持到GLIBCXX_3.4.26,
所以网上找一个可以支持的GLIBCXX_3.4.26的库
经查询,libstdc++.so.6.0.26是可以支持到GLIBCXX_3.4.26的
操作步骤
把找到的支持的正确版本的库文件libstdc++.so.6.0.26拷贝到/usr/lib64/
删除老的链接文件
rm -rf /usr/lib64/libstdc++.so.6
重新建立新的链接
ln -s /usr/lib64/libstdc++.so.6.0.26 /usr/lib64/libstdc++.so.6
然后重新启动应用程序
此问题解决方式不局限于srs这个应用程序,类似的version `GLIBCXX_3.4.26' not found,都可以参考此方式解决
版权归原作者 Byte-Coder 所有, 如有侵权,请联系我们删除。