0


centos升级GCC版本

一、yum方式升级gcc版本

1、查看目前版本

gcc -v

2、安装centos-release-scl

sudo yum install centos-release-scl

3、安装devtoolset

注意事项:如果想安装8版本的,就改成devtoolset-8-gcc,以此类推

sudo yum install devtoolset-11-gcc*

4、激活对应的devtoolset

(1)首先,安装的devtoolset是在 /opt/sh 目录下的,如图

每个版本的目录下面都有个 enable 文件,如果需要启用某个版本,需要执行

source ./enable

所以要想切换到某个版本,只需要执行

source /opt/rh/devtoolset-11/enable

可以将对应版本的切换命令写个shell脚本放在配了环境变量的目录下,需要时随时切换,或者开机自启

(2)也可以直接替换旧的gcc

旧的gcc是运行的 /usr/bin/gcc,所以将该目录下的gcc/g++替换为刚安装的新版本gcc软连接,免得每次enable

mv /usr/bin/gcc /usr/bin/gcc-4.8.5

ln -s /opt/rh/devtoolset-11/root/bin/gcc /usr/bin/gcc

mv /usr/bin/g++ /usr/bin/g++-4.8.5

ln -s /opt/rh/devtoolset-11/root/bin/g++ /usr/bin/g++

5、查看版本

二、源码编译

1、下载源码包并解压缩

wget http://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz

tar -xvf gcc-11.2.0.tar.gz

2、下载配置文件

./contrib/download_prerequisites

3、开始配置

mkdir build && cd build

../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib --prefix=/usr/local

4、编译

make

#这一步需要时间非常久 可以使用 make -j 4 让make最多运行四个编译命令同时运行,加快编译速度(建议不要超过CPU核心数量的2倍)

5、安装

make install

6、查看版本

gcc -v

g++ -v

7、配置全局可用

mv /usr/bin/gcc /usr/bin/gcc-4.8.5

ln -s /opt/rh/devtoolset-11/root/bin/gcc /usr/bin/gcc

mv /usr/bin/g++ /usr/bin/g++-4.8.5

ln -s /opt/rh/devtoolset-11/root/bin/g++ /usr/bin/g++

8、更新动态库

strings /usr/lib64/libstdc++.so.6 | grep CXXABI

mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6_bak

ln -s /usr/local/lib64/libstdc++.so.6.0.29 /usr/lib64/libstdc++.so.6

strings /usr/lib64/libstdc++.so.6 | grep CXXABI

标签: centos linux 运维

本文转载自: https://blog.csdn.net/m0_65350108/article/details/139652934
版权归原作者 阿杰! 所有, 如有侵权,请联系我们删除。

“centos升级GCC版本”的评论:

还没有评论