/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found

 原因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

 在查看发现已经升级

 

 

 

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found

链接: https://pan.baidu.com/s/1O29r8nNZXKFKO5-P8CRp4A
提取码: jmdp

 

上传文件到 /usr/lib64

cd /usr/lib64/

ln -s /usr/lib64/libstdc++.so.6.0.26   libstdc++.so.6

cd /lib64/

ln -s /usr/lib64/libstdc++.so.6.0.26  /lib64/

strings /usr/lib64/libstdc++.so.6 | grep GLIBC

发现有  GLIBCXX_3.4.21

 重新拉一次jar 服务再测。。。应该可以了

 

 

posted @ 2021-11-09 18:03  walkersss  阅读(2260)  评论(0编辑  收藏  举报