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
編譯通過了