在 CentOS 上安装高版本 GCC(比如 GCC 9 / 10 / 11 / 12),常见有 3 种方式,按推荐程度排序:
适合 CentOS 7 / 8,不破坏系统自带 gcc
yum install -y centos-release-scl
yum install -y devtoolset-11
scl enable devtoolset-11 bash
验证:
gcc --version
⚠️ 注意:
devtoolset 只在当前 shell 生效
永久生效可写:
echo "source scl_source enable devtoolset-11" >> ~/.bashrc
适合所有 CentOS,可控性最强
yum groupinstall -y "Development Tools"
yum install -y wget bzip2
cd /usr/local/src
wget https://ftp.gnu.org/gnu/gcc/gcc-12.2.0/gcc-12.2.0.tar.gz
tar -xf gcc-12.2.0.tar.gz
cd gcc-12.2.0
./contrib/download_prerequisites
mkdir build && cd build
../configure --prefix=/usr/local/gcc-12 \
--enable-languages=c,c++ \
--disable-multilib
make -j$(nproc) # 很慢,几十分钟到几小时
make install
export PATH=/usr/local/gcc-12/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/gcc-12/lib64:$LD_LIBRARY_PATH
dnf module list gcc
dnf module install gcc:11
| 系统 | 推荐方式 |
|---|---|
| CentOS 7 | SCL / 源码 |
| CentOS 8 | dnf module |
| CentOS Stream | dnf / 源码 |
/usr/bin/gcc如果你告诉我:
我可以给你精确命令。