项目场景:

提示:这里简述项目相关背景:
/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29’ not found


问题描述

这个问题主要出现在gcc版本上,我们可以采用以下操作来解决这个问题
我们可以根据上面libstdc++.so.6出现的位置来确定其能够满足的GLIBCXX的版本
用以下代码来查看

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX

在这里插入图片描述从上面图片来看这是有GLIBCXX_3.4.29,但这是我已经替换后的情况了,在这之前是没有GLIBCXX_3.4.29这一项的。

解决方案:

接下来我具体描述一下这个问题的解决方法

首先查看系统下的同名文件

find / -name "libstdc++.so.6*"

在这里插入图片描述这里我直接找到的是我安装的gcc-11.2.0目录下的一个libstdc++.so.6.0.29的文件,如果找不到或者不确定哪个能够满足,可以新安装一个高版本的gcc。

接下来确定其是否存在需要的版本

strings /opt/gcc-11.2.0/lib64/libstdc++.so.6.0.29 |grep GLIBCXX

在这里插入图片描述从输出结果来看是能够满足的
我们首先将这个版本的libstdc++.so.6.0.29复制到/usr/lib/x86_64-linux-gnu目录下

cp /opt/gcc-11.2.0/lib64/libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/

然后删除原来不符合要求的/usr/lib/x86_64-linux-gnu/libstdc++.so.6

rm /usr/lib/x86_64-linux-gnu/libstdc++.so.6

之后建立新的连接

ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/libstdc++.so.6
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐