CentOS 7 升级 GCC/G++ 版本

  CentOS 7官方源的 GCC 最新版本是 4.8.5,该版本发布于2015年,年代久远且不支持高版本的 C++ 编译了,因此有必要安装高版本的 GCC。
  红帽(RedHat)中拥有多个已经编译好了的高版本 GCC,但未更新到 base 和 epel 这两个常用源中,而是将这些版本放在 scl 中。因此我们想要安装高版本的 GCC,解决办法有两种:手动编译(也可以从其他机器拷贝或者网上下载),或从源安装
  为了方便,这里介绍从『源安装』的操作步骤。

从源升级GCC/G++

  1. 查看本机的 host 信息
hostnamectl
  1. 查看红帽(RedHat)的版本信息
cat /etc/redhat-release 
  1. 由于红帽将已编译好的高版本 GCC 放在了 scl,因此需要安装 scl
yum install -y centos-release-scl
  1. 列出已有的源
yum repolist
  1. 列出 GCC 所有可安装的版本
yum list | grep devtoolset | grep gcc.x86_64

CentOS 7 升级 GCC/G++ 版本_第1张图片

注意:这些软件包有一个好处是:它们可以同时安装,且不会相互覆盖和冲突,也不会覆盖原系统的版本,想要使用哪个版本就可以启动哪个版本,启动命令下面会讲到。

  1. 安装更高版本的GCC/G++(可选择一个安装,或者都安装)
# GCC 9
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++
# GCC 10
yum -y install devtoolset-10-gcc devtoolset-10-gcc-c++
# GCC 11
yum -y install devtoolset-11-gcc devtoolset-11-gcc-c++
  1. 切换gcc指令为新版本的GCC
# 将 x 改为想要启用的 GCC 版本,例如 x=11
source /opt/rh/devtoolset-11/enable

注意:这条指令的执行只能在当前终端生效,下一次打开终端必须重新执行这条指令。因此,方便起见,我们将其加入到 ~/.bashrc 配置文件中,使其打开终端默认执行该指令。
CentOS 7 升级 GCC/G++ 版本_第2张图片

你可能感兴趣的:(centos,linux,GCC,G++,版本升级)