centos7升级gcc至8.2-阿里云开发者社区

开发者社区> 开发与运维> 正文

centos7升级gcc至8.2

简介: yum -y install texinfomkdir /opt/soft/cd /opt/soft/wget http://ftp.gnu.org/gnu/gcc/gcc-8.2.0/gcc-8.2.

yum -y install texinfo
mkdir /opt/soft/
cd /opt/soft/
wget http://ftp.gnu.org/gnu/gcc/gcc-8.2.0/gcc-8.2.0.tar.gz
tar -C /usr/local -xzf gcc-8.2.0.tar.gz
cd /usr/local/gcc-8.2.0
./contrib/download_prerequisites
mkdir build
cd build
../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
yum groupinstall "Development Tools"
make #这个步骤非常耗时长
make install
reboot #一定要记得重启

find / -name "libstdc++.so*"
输出如下(最新动态库的目录)
/usr/local/gcc-8.2.0/build/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.25
/usr/local/gcc-8.2.0/build/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
/usr/local/gcc-8.2.0/build/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so

复制最新动态库文件libstdc++.so.6.0.25到/usr/lib64下
cp /usr/local/gcc-8.2.0/build/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.25 /usr/lib64

复制后,修改系统默认动态库的指向,即:重建默认库的软连接。切换工作目录至/usr/lib64:
cd /usr/lib64

删除原来软连接
rm -rf libstdc++.so.6

将默认库的软连接指向最新动态库:
ln -s libstdc++.so.6.0.25 libstdc++.so.6

默认动态库升级完成。重新运行以下命令检查动态库:
strings /usr/lib64/libstdc++.so.6 | grep GLIBC

gcc -v 查看版本号就变成8.2了

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章