ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /home/c3206-10/anaconda3/envs/new_py38/lib/python3.8/site-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
时间: 2023-07-10 08:27:28 浏览: 84
这个错误提示表明,/home/c3206-10/anaconda3/envs/new_py38/lib/python3.8/site-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so 这个文件需要 GLIBCXX_3.4.29 版本的 libstdc++.so.6 库,但是当前系统中没有找到这个版本的库。
解决方法是安装包含 GLIBCXX_3.4.29 版本的 libstdc++.so.6 库。可以按以下步骤操作:
1. 确定当前系统中已经安装的 libstdc++.so.6 库的版本号,可以使用以下命令:
```
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
```
2. 如果系统中已经安装了 GLIBCXX_3.4.29 版本的 libstdc++.so.6 库,可以将其软链接到 /lib/x86_64-linux-gnu/ 目录下,使用以下命令:
```
sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /lib/x86_64-linux-gnu/libstdc++.so.6
```
3. 如果系统中没有 GLIBCXX_3.4.29 版本的 libstdc++.so.6 库,可以下载安装包并手动安装。可以从 https://ftp.gnu.org/gnu/gcc/gcc-9.1.0/ 下载 gcc-9.1.0.tar.gz 压缩包,解压后进入 gcc-9.1.0 目录,使用以下命令编译并安装 libstdc++.so.6 库:
```
./configure --prefix=/usr/local/gcc-9.1.0 --disable-multilib
make
sudo make install
sudo ln -s /usr/local/gcc-9.1.0/lib64/libstdc++.so.6 /lib/x86_64-linux-gnu/libstdc++.so.6
```
第一条命令中的 --prefix=/usr/local/gcc-9.1.0 表示将编译后的文件安装到 /usr/local/gcc-9.1.0 目录下,--disable-multilib 表示不编译多种架构的库。编译过程可能需要一些时间,可以耐心等待。