参考文章:如何解决version `GLIBCXX_3.4.29‘ not found的问题
在 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)
根据提示是 /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
查看系统下同类型文件,存在的高版本文件
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
到这一步就已经完成了,可以查看是否已经存在
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX