处匈跑 发表于 2025-6-9 13:42:35

【Linux Ops】如何替换 libstdc++ 提升 GLIBCXX 版本

【环境】kos5.8sp2, kernel5.10
还是上一篇提到的那个软件环境,其依赖的 GLIBCXX 版本较高,因此在安装时给出了以下错误:
xxx: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by xxx)执行 strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX,查看当前环境中的 GLIBCXX,发现确实没有
示例:
思路一:

可以先查一下系统中有没有现成的 libstdc++.so.6.xx (6.0.29 及以上),如果有的话,直接重新将 /usr/lib64/libstdc++.so.6 链接过去。
网上有很多教程步骤,这里不再赘述。
思路二

如果思路一中并没有找到合适的 so,那么建议更新 gcc 的版本。这里仅仅下载 gcc 高版本是不行的,需要重新编译。
1)下载新版本 gcc
wget https://ftp.gnu.org/gnu/gcc/gcc-12.2.0/gcc-12.2.0.tar.gz
tar -zxvf gcc-12.2.0.tar.gz
cd gcc-12.2.0/2)安装相关依赖
./contrib/download_prerequisites输出类似如下信息即为成功:
$ ./contrib/download_prerequisites
gmp-6.2.1.tar.bz2: OK
mpfr-4.1.0.tar.bz2: OK
mpc-1.2.1.tar.gz: OK
isl-0.24.tar.bz2: OK
All prerequisites downloaded successfully.这里可能会遇到的问题:
./contrib/download_prerequisites: line 261: bzip2: command not found
解决方法:
sudo yum install -y bzip2
3)开始编译
mkdir build && cd build
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j50
make install这里如果编译不过,看情况,可能需要切换高版本 gcc 环境。
如果需要切换高版本环境,建议直接安装 gcc-toolset-11/12,然后使用 scl 工具切换。
scl enable gcc-toolset-12 bash编译通过后,记得退出 scl 环境:
exit到这里,GCC 的安装就结束了,我们可以通过 gcc -v 检查版本:
4)更新软链接
可以查看 /usr/lib64/libstdc++.so.6 的软链接
ll /usr/lib64/libstdc++.so.6找到我们安装后的 libstdc++.so 位置:
find /usr -name libstdc++.so*更新链接:
unlink /usr/lib64/libstdc++.so.6
ln -s /usr/local/lib64/libstdc++.so.6.0.30 /usr/lib64/libstdc++.so.6
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

赘暨逢 发表于 2025-11-8 21:19:11

感谢,下载保存了

抽厉 发表于 2025-11-13 07:25:17

热心回复!

兼罔 发表于 2025-11-27 01:22:02

新版吗?好像是停更了吧。

猷咎 发表于 2026-1-13 20:55:54

这个好,看起来很实用

呵桢 发表于 2026-1-19 10:06:54

东西不错很实用谢谢分享

貊淀 发表于 2026-1-21 18:16:04

谢谢楼主提供!

袋岖荤 发表于 2026-1-22 04:52:03

感谢分享,学习下。

顶豌 发表于 2026-1-23 16:48:26

新版吗?好像是停更了吧。

卓卞恻 发表于 2026-1-24 18:21:43

很好很强大我过来先占个楼 待编辑

寇秀娟 发表于 2026-1-25 09:14:11

新版吗?好像是停更了吧。

祝安芙 发表于 2026-1-25 10:51:06

懂技术并乐意极积无私分享的人越来越少。珍惜

何玲 发表于 2026-1-27 05:55:13

感谢,下载保存了

褐洌 发表于 2026-1-30 03:54:09

懂技术并乐意极积无私分享的人越来越少。珍惜

凳舒 发表于 2026-2-3 06:47:43

感谢分享

橘芜 发表于 2026-2-3 07:21:40

感谢发布原创作品,程序园因你更精彩

卓卞恻 发表于 2026-2-4 04:00:38

用心讨论,共获提升!

季卓然 发表于 2026-2-4 04:39:26

用心讨论,共获提升!

瞪皱炕 发表于 2026-2-5 12:23:13

谢谢楼主提供!

饨篦 发表于 2026-2-6 10:35:39

很好很强大我过来先占个楼 待编辑
页: [1] 2
查看完整版本: 【Linux Ops】如何替换 libstdc++ 提升 GLIBCXX 版本