在 CentOS 上把 gcc 降级 通常有几种常见做法,取决于你的 CentOS 版本和你需要的 gcc 版本。下面按 推荐程度 给你说明。
CentOS 7 官方仓库里 gcc 版本较高(4.8 / 7+),但可以通过 Software Collections (SCL) 安装旧版本。
yum install -y centos-release-scl
yum list available devtoolset-*
常见版本:
devtoolset-3 → gcc 4.9devtoolset-4 → gcc 5devtoolset-6 → gcc 6devtoolset-7 → gcc 7yum install -y devtoolset-3-gcc devtoolset-3-gcc-c++
scl enable devtoolset-3 bash
gcc --version
echo "source /opt/rh/devtoolset-3/enable" >> ~/.bashrc
✅ 优点
yum install -y centos-release-scl
yum install -y devtoolset-3-gcc devtoolset-3-gcc-c++
scl enable devtoolset-3 bash
⚠️ CentOS 6 已 EOL,建议升级系统。
gcc --version
rpm -qa | grep gcc
yum remove gcc gcc-c++
yum install gcc-4.8 gcc-c++-4.8
⚠️ 风险
适用于:
wget https://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz
tar -xzf gcc-4.8.5.tar.gz
cd gcc-4.8.5
./contrib/download_prerequisites
mkdir build && cd build
../configure --prefix=/usr/local/gcc-4.8 \
--enable-languages=c,c++ \
--disable-multilib
make -j$(nproc)
make install
使用:
export PATH=/usr/local/gcc-4.8/bin:$PATH
gcc --version
which gcc
| 场景 | 推荐方式 |
|---|---|
| CentOS 7 | SCL devtoolset |
| 临时切换 gcc | scl enable |
| 多版本共存 | SCL |
| 极老 gcc | 源码编译 |
| 生产环境 | ❌ 不建议直接替换系统 gcc |
如果你愿意,可以告诉我:
我可以给你 精确到命令 的方案。