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
相关推荐
珠海西格电力科技1 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
A星空1231 小时前
一、Linux嵌入式的I2C驱动开发
linux·c++·驱动开发·i2c
释怀不想释怀1 小时前
Linux环境变量
linux·运维·服务器
zzzsde1 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
凡人叶枫1 小时前
C++中智能指针详解(Linux实战版)| 彻底解决内存泄漏,新手也能吃透
java·linux·c语言·开发语言·c++·嵌入式开发
yuanmenghao2 小时前
Linux 性能实战 | 第 7 篇 CPU 核心负载与调度器概念
linux·网络·性能优化·unix
qq_297574672 小时前
Linux 服务器 Java 开发环境搭建保姆级教程
java·linux·服务器
70asunflower3 小时前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
聆风吟º3 小时前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
NPE~3 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化