您的位置 首页 linux 运维

centos 7 升级 gcc

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

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章