centos7系统编译报错对‘__cxa_throw_bad_array_new_length@CXXABI_1.3.8’未定义的引用 问题解决

centos的服务器上,部署jenkins跑自动编译运行测试用例的时候,报了这个问题,花了两天解决了这个问题,具体是使用gcc编译生成可执行文件,原因开发提供接口的动态库,里面用到了c++编译

第一步,升级centos的gcc版本  4.8升级到5.4,网上很多教程,不细说

第二步,使用g++去编译,又发现新问题/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found

原因:libstdc++.so.6需要升级,只支持到1.3.7,参考这个博客下载更新libstdc++.so.6.0.26       地址https://blog.csdn.net/weixin_44221035/article/details/103935537

第三步,下载完了将libstdc++.so.6.0.26 拷贝至/usr/lib64/     链接一下  

ln -s libstdc++.so.6.0.26 libstdc++.so.6

查询一下

strings /usr/lib64/libstdc++.so.6|grep CXXABI
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_1.3.8
CXXABI_1.3.9
CXXABI_1.3.10
CXXABI_1.3.11
CXXABI_1.3.12
CXXABI_TM_1
CXXABI_FLOAT128
CXXABI_1.3
CXXABI_1.3.11
CXXABI_1.3.2
CXXABI_1.3.6
CXXABI_FLOAT128
CXXABI_1.3.12
CXXABI_1.3.9
CXXABI_1.3.1
CXXABI_1.3.5
CXXABI_1.3.8
CXXABI_1.3.4
CXXABI_TM_1
CXXABI_1.3.7
CXXABI_1.3.10
CXXABI_1.3.3

编译通过了

猜你喜欢

转载自www.cnblogs.com/typttxs/p/13364804.html