glibcxx升级
经过测试“GLIBCXX3.4.21 not find”这篇博文解决了我的问题。
以下是安装步骤:
一、首先查看当前gcc版本
strings /usr/lib/x86_64_linux-gun/libstdc++.so.6|grep GLIBCXX
二、升级安装GCC
1. 下载最新版本gcc
gcc当前最新版本是5.2,下面是我找到的两个下载镜像,下载速度还可以,都可以使用:
wget http://gcc.parentingamerica.com/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
// 或
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
上面两个镜像分别位于加拿大和日本,由于gcc本身比较大(100MB左右),所以下载会需要一些时间。
wget http://gcc.parentingamerica.com/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
// 或
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
上面两个镜像分别位于加拿大和日本,由于gcc本身比较大(100MB左右),所以下载会需要一些时间。

2. 解压下载文件
gcc安装文件下载完成后,执行以下命令解压文件:
tar -xf gcc-5.2.0.tar.bz2
3. 下载gcc依赖文件和库
解压完成后,执行以下命令进入工作目录:
cd gcc-5.2.0
执行download_prerequisites脚本,下载gcc依赖文件和库:
./contrib/download_prerequisites
下载安装gcc所需的mpfr、gmp和mpc文件。
4. 配置安装gcc
建立一个输出目录,编译时所有生成的中间文件都放到该目录下:
mkdir gcc-temp
工作目录切换至输出目录,并在其中执行配置和安装:
cd gcc-temp
执行configure配置安装文件:
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
配置完成后,执行以下命令,编译gcc:
make
注意:编译gcc时间较长,我用了近三个小才编译完成。
编译完成后,安装gcc:
make install
安装完成后还需要替换系统默认的gcc,执行以下命令,查找5.2版本的安装文件:
ls /usr/local/bin | grep gcc
tar -xf gcc-5.2.0.tar.bz2
3. 下载gcc依赖文件和库
解压完成后,执行以下命令进入工作目录:
cd gcc-5.2.0
执行download_prerequisites脚本,下载gcc依赖文件和库:
./contrib/download_prerequisites
下载安装gcc所需的mpfr、gmp和mpc文件。
4. 配置安装gcc
建立一个输出目录,编译时所有生成的中间文件都放到该目录下:
mkdir gcc-temp
工作目录切换至输出目录,并在其中执行配置和安装:
cd gcc-temp
执行configure配置安装文件:
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
配置完成后,执行以下命令,编译gcc:
make
注意:编译gcc时间较长,我用了近三个小才编译完成。
编译完成后,安装gcc:
make install
安装完成后还需要替换系统默认的gcc,执行以下命令,查找5.2版本的安装文件:
ls /usr/local/bin | grep gcc

执行升级命令:
/usr/sbin/update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-unknown-linux-gnu-gcc-5.2.0 52
5. 验证安装
执行以下命令查看gcc版本:
gcc -v
执行以下命令查看g++版本:
g++ -v
或使用which gcc查看gcc安装目录,在安装目录下执行-v命令。例如,安装目录为/usr/local/bin/gcc:
/usr/local/bin/gcc -v
如果输出中有类似以下行,说明安装成功:
gcc 版本 5.2.0 (GCC)

三、更换软链接地址
1.顺着gcc的安装路径,找到新的libstdc++地址
strings /usr/local/lib64/libstdc++.so.6|grep GLIBCXX
2. 复制链接
cp /usr/local/lib64/libstdc++.so.6.0.21 /usr/lib64
cd /usr/lib64
rm -f libstdc++.so.6
ln -s libstdc++.so.6.0.21 libstdc++.so.6
$ ll libstdc*
四、检查
strings /usr/lib64/libstdc++.so.6|grep GLIBCXX
分类:
linux故障
posted on 2020-08-07 17:54 hopeless-dream 阅读(2488) 评论(1) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~