温馨提示×

centos能装几个gcc吗

小樊
46
2026-09-08 17:43:32
栏目: 智能运维

CentOS可以安装多个 GCC(GNU Compiler Collection)版本,而且这是很常见的做法,尤其用于兼容不同项目的编译需求。

下面分几种情况说明:


一、通过系统仓库安装多个 GCC(推荐)

CentOS(尤其是 7/8/Stream)可以通过 Software Collections (SCL)AppStream 安装多个版本。

CentOS 7 示例(使用 SCL)

yum install centos-release-scl
yum install devtoolset-7-gcc devtoolset-7-gcc-c++
yum install devtoolset-9-gcc devtoolset-9-gcc-c++

使用某个版本:

scl enable devtoolset-9 bash
gcc --version

不同 devtoolset 就是不同 GCC 版本,可共存。


CentOS 8 / Stream 示例

dnf install gcc gcc-c++
dnf install gcc-toolset-10

使用:

scl enable gcc-toolset-10 bash

二、手动编译安装多个 GCC(不冲突)

你可以从源码编译不同 GCC 版本,并指定不同安装目录:

./configure --prefix=/opt/gcc-11
make -j$(nproc)
make install

使用时:

export PATH=/opt/gcc-11/bin:$PATH

✅ 这种方式数量无限制,只要磁盘够。


三、多个 GCC 能否“同时生效”?

  • 可以共存
  • 不能同时是系统默认 gcc
  • 通过以下方式切换:
    • scl enable
    • update-alternatives
    • 指定绝对路径(如 /opt/gcc-11/bin/gcc

四、用 update-alternatives 管理(示例)

update-alternatives --install /usr/bin/gcc gcc /opt/gcc-11/bin/gcc 110
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 48

update-alternatives --config gcc

五、总结

✅ CentOS 可以装任意多个 GCC
✅ 系统自带 + SCL + 源码编译可共存
⚠️ 同一时间只有一个“默认 gcc”

如果你告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • 需要的 GCC 版本(如 4.8 / 7 / 9 / 11)

我可以给你精确的安装命令

0