centos 7 升级 gcc
centos 7 升级 gcc : 连接
Centos 7 升级 GCC_centos7 升级gcc-CSDN博客
分为 yum 安装 和 rpm安装
方式一: yum 安装
1. 检查当前 GCC 版本
gcc --version
2. 清理系统环境
sudo yum clean all
sudo yum update -y
二、安装 SCL 仓库
此处我们使用scl来切换gcc版本
SCL(Software Collections)提供高版本软件包,且与系统默认工具链隔离。
sudo yum install -y centos-release-scl
三、安装 GCC 9.3
1. 安装 devtoolset-9
sudo yum install -y devtoolset-9-gcc devtoolset-9-gcc-c++
如果报错如下,是因为CentOS 7 的SCL仓库已停止维护,默认的镜像服务器已失效,导致无法通过yum安装
解决方案 (切换为阿里云镜像环境)
1、查看自己的源环境
主要查看 base是否为阿里云环境 以及 sclo rh 是否为阿里云环境(以下是配图)
yum repolist
2、切换配置信息
如果本身是阿里源,那么直接 添加 scl 的源就可以,直接到 第3步就可以。
# 使用阿里云镜像
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
修改所有仓库配置为阿里云地址:
sudo sed -i 's|vault.centos.org|mirrors.aliyun.com/centos|g' /etc/yum.repos.d/*.repo
3、验证scl源 (如果和我的不一致可能回导致404 小伙伴可直接复制粘贴)
sudo vi /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo
然后:
[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=http://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/
enabled=1
gpgcheck=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
4、重新构建
切记一定要操作:
# 清除
sudo yum clean all
# 更新
sudo yum update -y
#构建
sudo yum makecache #构建
5, 安装 gcc
sudo yum install -y devtoolset-9-gcc devtoolset-9-gcc-c++
6. 激活 GCC 9.3 环境
scl enable devtoolset-9 bash
# 验证版本
gcc --version
7.永久切换为GCC 9.3
正常上述步骤后你的机器已经拥有了 9.3的环境,但是因为 scl enable devtoolset-9 bash 只是当前会话有效 当你新开会话之后 gcc 版本就会失效(小伙伴们可以打开一个新的窗口验证一下),所以建议设置成永久使用
1. 修改用户环境变量
# 写入配置信息
echo 'source /opt/rh/devtoolset-9/enable #This is gcc version' >> ~/.bashrc
# 验证是否添加成功
cat ~/.bashrc
# 刷新配置
source ~/.bashrc
打开新客户端 验证 gcc 版本是否生效
注:这里如果不想启动 只需要把 写入的数据删除掉,打开新窗口就回变回原来的版本
方式二: rpm 安装
下载文件:
wget http://vault.centos.org/centos/7/sclo/x86_64/rh/Packages/d/devtoolset-9-runtime-9.1-0.el7.x86_64.rpm
wget http://vault.centos.org/centos/7/sclo/x86_64/rh/Packages/d/devtoolset-9-binutils-2.32-16.el7.x86_64.rpm
wget http://vault.centos.org/centos/7/sclo/x86_64/rh/Packages/d/devtoolset-9-gcc-9.3.1-2.2.el7.x86_64.rpm
wget http://vault.centos.org/centos/7/sclo/x86_64/rh/Packages/d/devtoolset-9-gcc-c++-9.3.1-2.2.el7.x86_64.rpm
wget http://vault.centos.org/centos/7/sclo/x86_64/rh/Packages/d/devtoolset-9-libstdc++-devel-9.3.1-2.2.el7.x86_64.rpm
然后:
sudo yum install -y policycoreutils-python
sudo yum install -y scl-utils
然后:
sudo rpm -Uvh --force --nodeps devtoolset-9-runtime-9.1-0.el7.x86_64.rpm \
devtoolset-9-binutils-2.32-16.el7.x86_64.rpm \
devtoolset-9-gcc-9.3.1-2.2.el7.x86_64.rpm \
devtoolset-9-gcc-c++-9.3.1-2.2.el7.x86_64.rpm \
devtoolset-9-libstdc++-devel-9.3.1-2.2.el7.x86_64.rpm
然后参考 6.7 配置 激活环境
欢迎来撩 : 汇总all