CentOS 7 上升级 GCC版本

CentOS 7 上升级 GCC版本

由于软件的迭代更新,需要在在 CentOS 7 上安装 安装高版本 GCC,由于devtoolset-6官方源已被废弃,最可靠的方法是使用源码编译安装

此方法也可在无互联网环境中进行离线部署

下面是两种方法的详细步骤。

⚙️ 方法一:使用已被废弃的 devtoolset-6(不推荐)

这个方法虽然简单,但不推荐,因为它依赖已被废弃的源,可能不稳定或未来无法使用。仅当你在隔离的测试环境且不介意风险时,可以尝试。

  1. 尝试安装

    sudoyuminstallcentos-release-sclsudoyum--obsoleteinstalldevtoolset-6-gcc*

    这里的--obsolete参数是绕过官方源检查的关键。

  2. 启用并验证

    sclenabledevtoolset-6bashgcc--version

    成功启用后,你可能会看到版本号为6.3.1,这属于 GCC 6.x 系列,但并非精确的 6.20。

🛠️ 方法二:从源码编译安装 GCC 6.20(推荐)

这是安装精确版本6.20的标准且可靠的方法。

1. 安装依赖

sudoyum groupinstall"Development Tools"sudoyuminstallgmp-devel mpfr-devel libmpc-devel

2. 下载并解压源码

# 下载 GCC 6.20 源码包(如果链接失效,请去 gcc.gnu.org 查找最新有效链接)wgethttps://ftp.gnu.org/gnu/gcc/gcc-6.2.0/gcc-6.2.0.tar.gztar-zxvfgcc-6.2.0.tar.gzcdgcc-6.2.0

请注意:GCC 官方版本号是6.2.0而非6.20,请根据你需要的具体版本号调整命令。

3. 下载编译所需的依赖库

./contrib/download_prerequisites

此脚本会自动下载并配置编译所需的gmpmpfrmpc等库。

4. 配置、编译与安装

mkdirbuild&&cdbuild../configure--prefix=/usr/local/gcc-6.2.0\--enable-languages=c,c++\--disable-multilibmake-j$(nproc)# 使用所有CPU核心加速编译sudomakeinstall

5. 配置环境变量

echo'export PATH=/usr/local/gcc-6.2.0/bin:$PATH'>>~/.bashrcecho'export LD_LIBRARY_PATH=/usr/local/gcc-6.2.0/lib64:$LD_LIBRARY_PATH'>>~/.bashrcsource~/.bashrc

6. 验证安装

gcc--version

💎 总结

  • 追求稳定可靠:请选择方法二(源码编译)。虽然耗时较长,但这是安装指定版本 GCC 的标准做法。
  • 追求速度且不介意版本偏差:可以尝试方法一(devtoolset-6),但请注意其不稳定性。