Linux:ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29‘ not found

运行某代码时出现以下错误:

ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29‘ not found

原因是是 /usr/lib/x86_64-linux-gnu 路径下的 libstdc++.so.6 缺少GLIBCXX_3.4.29

输入以下指令查看,当前有哪些版本

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

 

可以看到,确实缺少了 GLIBCXX_3.4.29

 

解决办法:

 先查看系统下同类型文件,存在的高版本文件

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

只要出现了大于等于所需版本的文件,任意选择一个即可,如: ​​​​​​

并再次确认其是否存在需要的版本

strings /root/anaconda3/lib/libstdc++.so.6.0.29 | grep GLIBCXX

可以看到存在我们所需要的文件版本,接下来将文件拷贝过去,并建立软链接

# 拷贝文件
cp /root/anaconda3/lib/libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/

# 删除原链接
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
posted @ 2024-09-12 19:50  龙雪  阅读(64)  评论(0编辑  收藏  举报  来源