CentOS8 GCC8.x及切换GCC版本

GCC 8.x 系列

  • 初始发布的 CentOS 8:GCC 8.2.1
  • 后续更新:GCC 8.3.1、GCC 8.4.1 等

1.查看当前 GCC 版本

1
2
3
4
5
# 检查是否安装 GCC
gcc --version

# 或者
gcc -v

2.安装 GCC

如果系统没有安装 GCC:

1
2
3
4
5
# 安装 GCC
sudo dnf install gcc

# 安装开发工具组(包含 GCC、make 等)
sudo dnf groupinstall "Development Tools"

3.其他可用版本SCL

gcc-toolset所需要的软件仓库

3.1先清理原有缓存并备份原有 repo

1
2
mv /etc/yum.repos.d/CentOS-* /root/backup-repo/
yum clean all

3.2 使用国内镜像(阿里云为示例)

创建文件 /etc/yum.repos.d/CentOS-Base.repo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[base]
name=CentOS-8 Base - 阿里云
baseurl=http://mirrors.aliyun.com/centos/8/BaseOS/$basearch/os/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/8/BaseOS/$basearch/os/RPM-GPG-KEY-centosofficial
enabled=1

[appstream]
name=CentOS-8 AppStream - 阿里云
baseurl=http://mirrors.aliyun.com/centos/8/AppStream/$basearch/os/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/8/AppStream/$basearch/os/RPM-GPG-KEY-centosofficial
enabled=1

[extras]
name=CentOS-8 Extras - 阿里云
baseurl=http://mirrors.aliyun.com/centos/8/extras/$basearch/os/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/8/extras/$basearch/os/RPM-GPG-KEY-centosofficial
enabled=1

注意:CentOS 8 官方在 2021 年末后停止维护,很多镜像转为 CentOS-Stream 或 Archive。如果找不到某些包,可能需要用 Archive 源。

3.3安装 centos-release-scl 或 SCL 相关 repo

1
yum install -y https://mirrors.aliyun.com/centos/8/AppStream/x86_64/os/Packages/centos-release-scl-3-5.el8.noarch.rpm

如果这个包在阿里源找不到,可以从 Archive 镜像下载。

3.4手动启用 SCL 库仓库

创建 /etc/yum.repos.d/CentOS-SCLo-scl.repo

1
2
3
4
5
6
[C8-SCLo-scl-rhui]
name=CentOS-8 SCLo scl repo - 阿里云
baseurl=http://mirrors.aliyun.com/centos/8/sclo/$basearch/sclo/
gpgcheck=1
enabled=1
gpgkey=http://mirrors.aliyun.com/centos/8/AppStream/$basearch/os/RPM-GPG-KEY-centosofficial

3.5清理并更新元数据

1
2
yum clean all
yum makecache

3.6安装 gcc-toolset

1
yum install -y gcc-toolset-9 # 根据需求改版本,例如 9 / 10 ...

3.7启用工具集

1
2
scl enable gcc-toolset-9 bash
gcc --version

这样临时进入带 gcc-toolset 的环境。


国内常用镜像源除了 阿里:

  • 中科大 https://mirrors.ustc.edu.cn/centos/8/
  • 清华大学 https://mirrors.tuna.tsinghua.edu.cn/centos/8/
  • 华为云 https://repo.huaweicloud.com/centos/8/

3.8补充

CentOS 8 还通过 Software Collections 提供其他 GCC 版本:

1
2
3
4
5
6
7
8
9
10
# 查看可用的 GCC 版本
sudo dnf search gcc-toolset

# 安装较新版本的 GCC(如 GCC 9、10、11)
sudo dnf install gcc-toolset-9
sudo dnf install gcc-toolset-10
sudo dnf install gcc-toolset-11

# 启用特定版本
scl enable gcc-toolset-11 bash

注意事项

  • CentOS 8 已于 2021 年底停止维护,建议考虑升级到 CentOS Stream 或 Rocky Linux/AlmaLinux
  • 如果需要更新的 GCC 版本,建议使用较新的 Linux 发行版或自行编译安装