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 1118 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

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐