温馨提示×

centos如何源码装gcc

小樊
38
2026-09-08 17:51:43
栏目: 智能运维

在 CentOS 上从源码编译安装 GCC,一般步骤如下(以较常见的 GCC 10/11/12 为例,方法通用)。


一、准备工作

1. 安装依赖

sudo yum groupinstall "Development Tools" -y
sudo yum install -y wget bison flex gmp-devel mpfr-devel libmpc-devel

如果是 CentOS 8 / Stream,可用 dnf 代替 yum


二、下载 GCC 源码

以 GCC 12.3.0 为例:

cd /usr/src
sudo wget https://ftp.gnu.org/gnu/gcc/gcc-12.3.0/gcc-12.3.0.tar.gz
sudo tar -xf gcc-12.3.0.tar.gz
cd gcc-12.3.0

三、下载依赖库(推荐方式)

GCC 自带脚本可自动下载依赖:

./contrib/download_prerequisites

这会下载:

  • gmp
  • mpfr
  • mpc

四、创建编译目录(非常重要)

不要直接在源码目录编译

mkdir build
cd build

五、配置编译参数

../configure \
  --prefix=/usr/local/gcc-12.3.0 \
  --enable-languages=c,c++ \
  --disable-multilib \
  --enable-bootstrap

参数说明:

  • --prefix:安装路径
  • --enable-languages:只编译 C/C++
  • --disable-multilib:不编译 32 位
  • --enable-bootstrap:提高稳定性(耗时更长)

六、编译(非常耗时)

make -j$(nproc)

服务器建议 make -j$(nproc),笔记本可少一点


七、安装

sudo make install

八、配置环境变量

方法 1:临时使用

export PATH=/usr/local/gcc-12.3.0/bin:$PATH

方法 2:永久生效

echo 'export PATH=/usr/local/gcc-12.3.0/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

九、验证

gcc --version
g++ --version

十、可选:设置系统默认 GCC(谨慎)

sudo alternatives --install /usr/bin/gcc gcc /usr/local/gcc-12.3.0/bin/gcc 60
sudo alternatives --install /usr/bin/g++ g++ /usr/local/gcc-12.3.0/bin/g++ 60

切换:

sudo alternatives --config gcc

常见问题

1. 编译极慢

  • 减少 make -j
  • 或只编译 C/C++

2. 系统 GCC 被破坏

  • 不要覆盖 /usr/bin/gcc
  • 使用 alternatives

3. 需要旧 CentOS(6/7)

  • 可能需要先装新 binutils

如果你告诉我:

  • CentOS 版本(6 / 7 / 8 / Stream)
  • 目标 GCC 版本
  • 是否用于编译内核 / CUDA / Rust 等

我可以给你精确命令

0