libstdc++.so.6: version `GLIBCXX_3.4.32‘ not found (required by /home/dongdong/miniconda3/envs/huggi
·
1. 报错信息
Traceback (most recent call last):
File "/opt/model/custom_bin/test_gpu.py", line 1, in <module>
import pycuda.driver as cuda
File "/home/dongdong/miniconda3/envs/hugging4/lib/python3.10/site-packages/pycuda/driver.py", line 66, in <module>
from pycuda._driver import * # noqa
ImportError: /home/dongdong/miniconda3/envs/hugging4/bin/../lib/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /home/dongdong/miniconda3/envs/hugging4/lib/python3.10/site-packages/pycuda/_driver.cpython-310-x86_64-linux-gnu.so)
2. 解决问题
2.1 先判断是不是系统缺少一个特定版本的 libstdc++库。这通常是由于系统的 GCC 版本较旧,需要更新libstdc++` 库。
如果是版本较旧:则更新系统的 GCC 版本
A、 更新 GCC: 安装或更新你的 GCC 版本,以确保你有最新的 libstdc++ 库。
sudo apt update
sudo apt install gcc g++
也可以使用使用 Conda 安装合适版本的 libstdc++
conda install -c conda-forge libstdcxx-ng
B、 验证 libstdc++ 版本:
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
确保输出中包含 GLIBCXX_3.4.30。
2.2 如果出现GLIBCXX_3.4.30还是报错,那我们建立软链接
这里的报错路径需要设置的跟报错路径一样,注意一下。
cd /home/dongdong/miniconda3/envs/hugging4/bin/../lib/
mv libstdc++.so.6 libstdc++.so.6.old
ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6
更多推荐
所有评论(0)