Centos7.X 升级GCC版本

系统均为 CentOS7.X,部分代码编译需要新版本的GCC 例如 Apache Traffic Server v9.0.2 

~升级GCC版本

由于ATS9.X编译需要

1.安装centos-release-scl

sudo yum install centos-release-scl -y

2.安装devtoolset

sudo yum install devtoolset-9-gcc* -y

3.激活对应的devtoolset

scl enable devtoolset-9 bash

4.查看版本

gcc -v   显示 gcc version 9.3.1 20200408 (Red Hat 9.3.1-2) (GCC)

注意事项:gcc如果没有切换只对本次会话有效
1.切换gcc版本
补充: 这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本,要想随意切换可按如下操作。

1.首先,安装的devtoolset是在 /opt/sh 目录下的

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

source ./enable

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

source /opt/rh/devtoolset-9/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-9/root/bin/gcc /usr/bin/gcc
  • mv /usr/bin/g++ /usr/bin/g++-4.8.5
  • ln -s /opt/rh/devtoolset-9/root/bin/g++ /usr/bin/g++
  • gcc --version
  • g++ --version

发表评论

您的电子邮箱地址不会被公开。