温馨提示×

centos如何安装高版本gcc

小樊
38
2026-08-29 11:41:34
栏目: 智能运维

CentOS 上安装高版本 GCC(如 GCC 9 / 10 / 11 / 12 / 13)常见有 三种方式,推荐优先使用 SCL 或 DevToolset,不需要破坏系统自带 gcc。


一、推荐方式:使用 DevToolset(SCL)(最安全、最常用)

适用于:

  • CentOS 7
  • RHEL 7
  • CentOS 8(Stream 也可用)

1️⃣ 安装 SCL 源

yum install -y centos-release-scl

2️⃣ 查看可用的 GCC 版本

yum search devtoolset

常见版本:

  • devtoolset-7 → GCC 7
  • devtoolset-8 → GCC 8
  • devtoolset-9 → GCC 9
  • devtoolset-10 → GCC 10
  • devtoolset-11 → GCC 11

3️⃣ 安装高版本 GCC(示例:GCC 11)

yum install -y devtoolset-11

4️⃣ 启用 GCC

scl enable devtoolset-11 bash

验证:

gcc --version

只对当前 shell 生效(推荐)


永久生效(可选)

echo "source /opt/rh/devtoolset-11/enable" >> ~/.bashrc

二、CentOS 8 / Stream(推荐 dnf)

1️⃣ 安装 gcc-toolset

dnf install -y gcc-toolset-11

2️⃣ 启用

scl enable gcc-toolset-11 bash

或:

source /opt/rh/gcc-toolset-11/enable

三、使用 第三方仓库(ELRepo / AppStream)

查看系统支持版本:

dnf group list
dnf module list gcc

示例:

dnf install gcc-toolset-12

四、手动编译安装(不推荐,除非必须用最新 GCC)

示例:安装 GCC 13

1️⃣ 安装依赖

yum install -y gmp-devel mpfr-devel libmpc-devel

2️⃣ 下载源码

wget https://ftp.gnu.org/gnu/gcc/gcc-13.2.0/gcc-13.2.0.tar.xz
tar -xf gcc-13.2.0.tar.xz
cd gcc-13.2.0

3️⃣ 下载依赖

./contrib/download_prerequisites

4️⃣ 编译安装

mkdir build && cd build
../configure --enable-languages=c,c++ --disable-multilib
make -j$(nproc)
make install

⚠️ 风险:

  • 时间长
  • 可能破坏系统 gcc
  • 不建议生产环境

五、常见问题

GCC 没生效?

which gcc
gcc --version

确认是否:

source /opt/rh/devtoolset-11/enable

glibc 版本问题?

高版本 gcc ≠ 高版本 glibc
不要尝试升级 glibc!


六、推荐方案总结

场景 推荐方式
CentOS 7 devtoolset
CentOS 8 / Stream gcc-toolset
需要最新 GCC Docker / 容器
生产环境 ✅ devtoolset

如果你愿意,可以告诉我:

  • CentOS 版本
  • 需要 GCC 几?
  • 是否 生产环境

我可以给你一条 最适合的命令组合

0