当前位置:   article > 正文

【Error】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

参考文章:如何解决version `GLIBCXX_3.4.29‘ not found的问题

1. 问题

在 wsl ubuntu20.04 运行 yolov8 时,出现以下错误

ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /root/anaconda3/lib/python3.9/site-packages/pandas/_libs/window/aggregations.cpython-39-x86_64-linux-gnu.so)
  • 1

根据提示是 /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
  • 1

在这里插入图片描述
可以看到,确实缺少了 GLIBCXX_3.4.29

2. 解决方法

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

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

在这里插入图片描述
出现的版本比较多,任意选择其中一个版本,使用命令查看是否存在需要的版本

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

在这里插入图片描述
可以看到存在我们所需要的文件版本
接下来将文件拷贝过去,并建立连接

# 拷贝文件
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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

到这一步就已经完成了,可以查看是否已经存在

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

在这里插入图片描述
大功告成!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/189278
推荐阅读
相关标签