CentOS升级GCC

背景

CentOS 7默认自带GCC版本4.8,而目前工作中开发环境需要用到GCC8和GCC12,这里记录一下如何升级GCC版本,以及如何多版本并存。参考:
CentOS升级gcc-知乎
Redhat7上安装Red Hat Developer Toolset并自由切换gcc和g++的版本

CentOS 7升级gcc

devtoolset对应gcc的版本

复制代码
devtoolset-7对应gcc7.x.x版本
devtoolset-8对应gcc8.x.x版本
devtoolset-9对应gcc9.x.x版本
devtoolset-10对应gcc10.x.x版本
devtoolset-11对应gcc11.x.x版本

可通过centos-release-scl源安装devtoolset包:

bash 复制代码
yum install centos-release-scl
yum install devtoolset-8

激活gcc版本,使其生效:

bash 复制代码
scl enable devtoolset-8 bash
# 或者下面这句
# source /opt/rh/devtoolset-8/enable

执行后,只在当前终端生效,要永久生效,可以将激活语句加入到~/.bashrc中。

此时通过gcc --version命令可以看到版本信息。

🎉🎉🎉🎉🎉🎉🎉

遗憾的是上述方式无法安装gcc12,devtoolset目前只提供到gcc11。于是自己找了个软件源(https://copr.fedorainfracloud.org/coprs/mlampe/devtoolset-12/),新建一个源文件:

bash 复制代码
vim /etc/yum.repos.d devtoolset-12.repo

在文件中写入以下内容:

复制代码
[copr:copr.fedorainfracloud.org:mlampe:devtoolset-12]
name=Copr repo for devtoolset-12 owned by mlampe
baseurl=https://download.copr.fedorainfracloud.org/results/mlampe/devtoolset-12/epel-7-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://download.copr.fedorainfracloud.org/results/mlampe/devtoolset-12/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
相关推荐
qetfw17 小时前
Debian OpenSSL 搭建 CA 证书服务:签发、吊销与客户端信任
linux·debian·openssl·ca
Embedded-Xin18 小时前
中间件—zenoh零基础入门
linux·中间件·rust·机器人·自动驾驶·嵌入式
草莓熊Lotso18 小时前
【Linux网络】从0手写Reactor反应堆(二):完善核心细节——ET非阻塞读写、分层架构与回调机制
linux·运维·服务器·网络·c++·tcp/ip·架构
mounter62518 小时前
深度解析 eBPF LSM:如何利用 eBPF 构建安全的 Linux 内核纵深防御体系
linux·安全·ebpf·linux kernel·kernel
xlq2232219 小时前
高并发服务器day21
运维·服务器
Brilliantwxx19 小时前
【Linux】 第一个程序终端进度条
linux·运维·服务器
拂拉氏19 小时前
【知识讲解】 Linux漫漫长路的起始--基础命令的了解
linux·命令
AI创界者19 小时前
【网络安全运维】Kali Linux 下 Medusa(美杜莎)工具的高效部署、故障排查与安全测试实战
linux·运维·web安全
FinelyYang19 小时前
CentOS 7.6 自建 LiveKit 部署指南
linux·运维·centos
Huangjin007_19 小时前
【Linux 系统篇(十四)】进程 (二) :PCB、task_struct、fork系统调用
linux·运维·服务器