
ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.30‘ not found (required by /root/miniconda3
报错展示缺少所需的GLIBCXX_3.4.30版本的GLIBCXX,下面是解决的办法。
·
ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /root/miniconda3
报错展示缺少所需的GLIBCXX_3.4.30版本的GLIBCXX,下面是解决的办法。
1、检查
先查看系统中是否存在GLIBCXX_3.4.30
(ppocrb) [root@localhost ~]# strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_3.4.24
GLIBCXX_DEBUG_MESSAGE_LENGTH
系统中没有GLIBCXX_3.4.30需要进行安装
2、下载GCC
2.1 确定版本
下载GCC前需要确定所需的版本信息
It is versioned as follows:
GCC 3.0.0: libstdc++.so.3.0.0
GCC 3.0.1: libstdc++.so.3.0.1
GCC 3.0.2: libstdc++.so.3.0.2
GCC 3.0.3: libstdc++.so.3.0.2 (See Note 1)
GCC 3.0.4: libstdc++.so.3.0.4
GCC 3.1.0: libstdc++.so.4.0.0 (Incompatible with previous)
GCC 3.1.1: libstdc++.so.4.0.1
GCC 3.2.0: libstdc++.so.5.0.0 (Incompatible with previous)
GCC 3.2.1: libstdc++.so.5.0.1
GCC 3.2.2: libstdc++.so.5.0.2
GCC 3.2.3: libstdc++.so.5.0.3 (See Note 2)
GCC 3.3.0: libstdc++.so.5.0.4
GCC 3.3.1: libstdc++.so.5.0.5
GCC 3.4.0: libstdc++.so.6.0.0 (Incompatible with previous)
GCC 3.4.1: libstdc++.so.6.0.1
GCC 3.4.2: libstdc++.so.6.0.2
GCC 3.4.3: libstdc++.so.6.0.3
GCC 4.0.0: libstdc++.so.6.0.4
GCC 4.0.1: libstdc++.so.6.0.5
GCC 4.0.2: libstdc++.so.6.0.6
GCC 4.0.3: libstdc++.so.6.0.7
GCC 4.1.0: libstdc++.so.6.0.7
GCC 4.1.1: libstdc++.so.6.0.8
GCC 4.2.0: libstdc++.so.6.0.9
GCC 4.2.1: libstdc++.so.6.0.9 (See Note 3)
GCC 4.2.2: libstdc++.so.6.0.9
GCC 4.3.0: libstdc++.so.6.0.10
GCC 4.4.0: libstdc++.so.6.0.11
GCC 4.4.1: libstdc++.so.6.0.12
GCC 4.4.2: libstdc++.so.6.0.13
GCC 4.5.0: libstdc++.so.6.0.14
GCC 4.6.0: libstdc++.so.6.0.15
GCC 4.6.1: libstdc++.so.6.0.16
GCC 4.7.0: libstdc++.so.6.0.17
GCC 4.8.0: libstdc++.so.6.0.18
GCC 4.8.3: libstdc++.so.6.0.19
GCC 4.9.0: libstdc++.so.6.0.20
GCC 5.1.0: libstdc++.so.6.0.21
GCC 6.1.0: libstdc++.so.6.0.22
GCC 7.1.0: libstdc++.so.6.0.23
GCC 7.2.0: libstdc++.so.6.0.24
GCC 8.1.0: libstdc++.so.6.0.25
GCC 9.1.0: libstdc++.so.6.0.26
GCC 9.2.0: libstdc++.so.6.0.27
GCC 9.3.0: libstdc++.so.6.0.28
GCC 10.1.0: libstdc++.so.6.0.28
GCC 11.1.0: libstdc++.so.6.0.29
GCC 12.1.0: libstdc++.so.6.0.30
GCC 13.1.0: libstdc++.so.6.0.31
GCC 13.2.0: libstdc++.so.6.0.32
GCC 14.1.0: libstdc++.so.6.0.33
GCC 12.1.0: libstdc++.so.6.0.30
.30的版本需要安装GCC 12.1.0
2.2 依赖项
在编译 GCC 之前,您需要安装一些依赖项,可以根据系统本身的情况安装
sudo yum groupinstall -y "Development Tools"
sudo yum install -y mpfr-devel gmp-devel libmpc-devel
2.3 下载 GCC 12.1.0 源代码
https://ftp.gnu.org/gnu/gcc/
wget https://ftp.gnu.org/gnu/gcc/gcc-12.1.0/gcc-12.1.0.tar.gz
tar -xzf gcc-12.1.0.tar.gz
cd gcc-12.1.0
2.4 准备编译环境
./contrib/download_prerequisites
2.5 配置、编译和安装 GCC 12.1.0
过程需要比较长的时间
mkdir build && cd build
../configure --prefix=/usr/local/gcc-12.1.0 --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j$(nproc)
sudo make install
2.6 更新 libstdc++.so.6 链接
首先,找到新安装的 libstdc++.so.6 的版本号。
ls /usr/local/gcc-12.1.0/lib64/libstdc++.so.*
然后,创建一个符号链接指向新版本。
(ppocrb) [root@localhost build]# ls /usr/local/gcc-12.1.0/lib64/libstdc++.so.*
/usr/local/gcc-12.1.0/lib64/libstdc++.so.6 /usr/local/gcc-12.1.0/lib64/libstdc++.so.6.0.30 /usr/local/gcc-12.1.0/lib64/libstdc++.so.6.0.30-gdb.py
(ppocrb) [root@localhost build]# sudo ln -sf /usr/local/gcc-12.1.0/lib64/libstdc++.so.6.x.x.x /usr/lib64/libstdc++.so.6
(ppocrb) [root@localhost build]# echo 'export PATH=/usr/local/gcc-12.1.0/bin:$PATH' >> ~/.bashrc
(ppocrb) [root@localhost build]# source ~/.bashrc
(base) [root@localhost build]# gcc --version
gcc (GCC) 12.1.0
请将 x.x.x 替换为您找到的实际版本号,最后确认输出显示的是 GCC 12.1.0。
3、确认
(base) [root@localhost build]# ls -l /usr/lib64/libstdc++.so.6
lrwxrwxrwx 1 root root 47 11月 18 14:51 /usr/lib64/libstdc++.so.6 -> /usr/local/gcc-12.1.0/lib64/libstdc++.so.6.0.30
查看
(base) [root@localhost build]# strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_3.4.24
GLIBCXX_3.4.25
GLIBCXX_3.4.26
GLIBCXX_3.4.27
GLIBCXX_3.4.28
GLIBCXX_3.4.29
GLIBCXX_3.4.30
GLIBCXX_DEBUG_MESSAGE_LENGTH
更多推荐
所有评论(0)