在 CentOS 上升级 GCC(GNU Compiler Collection) 版本,常见有 三种方式,从简单到灵活依次如下。你可以根据需求选择。
适用于 CentOS 7 / 8,不会破坏系统自带 GCC。
sudo yum install -y centos-release-scl
yum list available devtoolset-*-gcc
常见版本:
devtoolset-7-gcc(GCC 7)devtoolset-8-gcc(GCC 8)devtoolset-9-gcc(GCC 9)devtoolset-10-gcc(GCC 10)devtoolset-11-gcc(GCC 11)sudo yum install -y devtoolset-11
scl enable devtoolset-11 bash
验证:
gcc --version
写入 ~/.bashrc:
echo "source /opt/rh/devtoolset-11/enable" >> ~/.bashrc
source ~/.bashrc
✅ 优点
CentOS 8 及 Stream 版本仓库中 GCC 版本较新。
sudo dnf install gcc gcc-c++
gcc --version
⚠️ 注意:
适合需要 最新 GCC(如 13 / 14) 的情况。
sudo yum groupinstall -y "Development Tools"
sudo yum install -y gmp-devel mpfr-devel libmpc-devel
wget https://mirrors.tuna.tsinghua.edu.cn/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
./contrib/download_prerequisites
mkdir build && cd build
../configure --prefix=/usr/local/gcc-13 --enable-languages=c,c++ --disable-multilib
make -j$(nproc)
sudo make install
echo 'export PATH=/usr/local/gcc-13/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/gcc-13/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
| 场景 | 推荐方式 |
|---|---|
| CentOS 7 服务器 | ✅ SCL(devtoolset) |
| CentOS 8 / Stream | dnf 直接安装 |
| 需要最新 GCC | 源码编译 |
gcc 还是旧版本?scl enablewhich gccGLIBCXX 错误?libstdc++.so.6如果你愿意,可以告诉我:
我可以给你 精确到命令 的方案。