CentOS 7 上升级 GCC版本
由于软件的迭代更新,需要在在 CentOS 7 上安装 安装高版本 GCC,由于devtoolset-6官方源已被废弃,最可靠的方法是使用源码编译安装。
此方法也可在无互联网环境中进行离线部署
下面是两种方法的详细步骤。
⚙️ 方法一:使用已被废弃的 devtoolset-6(不推荐)
这个方法虽然简单,但不推荐,因为它依赖已被废弃的源,可能不稳定或未来无法使用。仅当你在隔离的测试环境且不介意风险时,可以尝试。
尝试安装:
sudoyuminstallcentos-release-sclsudoyum--obsoleteinstalldevtoolset-6-gcc*这里的
--obsolete参数是绕过官方源检查的关键。启用并验证:
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-devel2. 下载并解压源码
# 下载 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此脚本会自动下载并配置编译所需的gmp、mpfr、mpc等库。
4. 配置、编译与安装
mkdirbuild&&cdbuild../configure--prefix=/usr/local/gcc-6.2.0\--enable-languages=c,c++\--disable-multilibmake-j$(nproc)# 使用所有CPU核心加速编译sudomakeinstall5. 配置环境变量
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~/.bashrc6. 验证安装
gcc--version💎 总结
- 追求稳定可靠:请选择方法二(源码编译)。虽然耗时较长,但这是安装指定版本 GCC 的标准做法。
- 追求速度且不介意版本偏差:可以尝试方法一(devtoolset-6),但请注意其不稳定性。
