GLIBCXX_3.4.30/GLIBCXX_3.4.31/GLIBCXX_3.4.32 统统适用
注意
/usr/lib64 需要修改为自己的真实路径,不过一般都是这个路径(也有/usr/lib/x86_64-linux-gnu/这种路径的)
分两种情况,一种是已经有GLIBCXX_3.4.30,一种是根本没有
一、先查看是否存在GLIBCXX_3.4.30
通过下面命令查看系统中是否存在GLIBCXX_3.4.30
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
如果没有就看不存在的处理办法,存在就看存在的处理办法
二、已经存在GLIBCXX_3.4.30/ 31 /32 处理办法
(1)、通过下面命令查看是否已经建立过软连接
ls -l /usr/lib64/libstdc++.so*
(2)、如果没有看到自己需要的版本连接,可以通过下面命令建立软件列
ln -sf /usr/lib64/libstdc++.so.6.0.32 /usr/lib64/libstdc++.so.6
如果失败了,可以按 三、不存在 GLIBCXX_3.4.30/ 31 /32 处理办法 试一试
三、不存在 GLIBCXX_3.4.30/ 31 /32 处理办法
先执行下面的命令看下自己系统内有没有 libstdc++.so=6.0.30 / 31 / 32
ls -l /usr/lib64/libstdc++.so*
1、如果列表中没有 libstdc++.so=6.0.30 / 31 / 32
(1)、执行下面的命令去下载
conda install -c conda-forge libstdcxx-ng
(2)、执行 ls -l /usr/lib64/libstdc++.so* 去查看列表中是否有GLIBCXX_3.4.30/ 31 /32
如果有就可以进行 下面的 2.如果存在libstdc++.so=6.0.30 / 31 / 32 的内容了
2、如果存在libstdc++.so=6.0.30 / 31 / 32
(1)、挑选一个自己需要的版本复制到指定目录下
cp /data/anaconda3/lib/libstdc++.so.6.0.32 /usr/lib64/
我这里选择的是/data/anaconda3/lib/libstdc++.so.6.0.32,复制到/usr/lib64/目录下这个目录一般是固定的
(2)、复制之后执行下面命令 创建软连接
ln -sf /usr/lib64/libstdc++.so.6.0.32 /usr/lib64/libstdc++.so.6
(3)、执行成功之后,可以通过这个命令查看已经建立过的软连接
ls -l /usr/lib64/libstdc++.so*
这是输出结果,可以看到 6.0.32已经建立了连接
(4)、可以通过下面查看列表中是否存在GLIBCXX_3.4.30 / 31 / 32 了
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
大功告成!!!!!!!!!!!!!!!!
linstdc++.so.6 和 gcc版本对应关系
参考链接:GCC 版本对应的 libstdc++ 库版本 - Freelancy - 博客园 (cnblogs.com)
需要注意 linstdc++.so.6 和 gcc的版本对应关系 非常重要
GLIBCXX_3.4.30 需要 GCC 12.1.0
GLIBCXX_3.4.31 需要 GCC 13.1.0
通过这个命令可以查看系统的gcc版本
gcc -v
本文是把几个博客整理了一下,因为信息太碎了
参考1:https://blog.csdn.net/qq_40770277/article/details/134250871
参考2:https://blog.csdn.net/weixin_44237337/article/details/130588335