version `GLIBCXX_3.4.29‘ not found解决办法

Writen by 六个肾的派大星

问题描述 :

在课题组的Ubuntu服务器上跑yolov8的模型实验,在改IoU的时候,出现了这个问题:

ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29’ not found (required by /home/chen/anaconda3/envs/yolo_v7/lib/python3.8/site-packages/google/protobuf/pyext/_message.cpython-38-x86_64-linux-gnu.so)

解决办法:

方法一:在 conda 环境中安装 GCC 和 G++

conda install -c conda-forge gcc=12.3.0
conda install -c conda-forge gxx=12.3.0

我只使用了第一个安装gcc,下面的的没用就好使了,但是在stack overflow上有大佬给出的解决方案。
解决方法简单粗暴,这个错误一般是系统和gcc版本匹配,可能是因为我前段时间因为一些编译问题,弄了一下gcc导致的。升级gcc版本就是最简单的方法。

方法二:手动添加路径

这个方法就是重新指定一下加载库的路径,网上一搜就有很多的这种方法。

strings /home/usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX_3.4.30
strings /path-to-your-conda-env/lib/libstdc++.so.6 | grep GLIBCXX_3.4.30
export LD_LIBRARY_PATH=/path-to-your-conda-env/lib:$LD_LIBRARY_PATH
  • 16
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
version GLIBCXX_3.4.29 not found是一个错误消息,意味着你的系统中缺少GLIBCXX_3.4.29版本的libstdc++. 这个错误通常在安装某些软件时出现,比如AWVS Acunetix Web Vulnerability Scanner或Anaconda。解决这个问题的方法如下: 1. 首先,你需要找到当前系统中libstdc++.so.6文件的位置和版本。可以使用以下命令来查找: ``` locate libstdc++.so.6 ``` 或者使用以下命令来查看当前系统中libstdc++.so.6文件的版本: ``` strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX ``` 2. 找到对应的GLIBCXX版本后,你可以将该版本的libstdc++.so.6文件复制到指定目录,并创建软链接。假设你需要复制的文件是libstdc++.so.6.0.29,指定目录是/usr/lib/x86_64-linux-gnu/,你可以使用以下命令完成: ``` sudo cp /home/wuye/anaconda3/envs/tf2/lib/libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/ sudo rm /usr/lib/x86_64-linux-gnu/libstdc++.so.6 sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/libstdc++.so.6 ``` 注意替换文件路径和版本号为你实际的路径和版本号。 3. 如果在第二步中没有找到所需版本的libstdc++.so.6文件,你可以尝试使用以下命令安装所需的版本: ``` sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt update sudo apt install gcc-9 sudo apt install libstdc++6 ``` 这将安装gcc-9和libstdc++.6,并提供所需的GLIBCXX版本。 这些方法应该能够解决version GLIBCXX_3.4.29 not found的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值