温馨提示×

centos怎样升级c++版本

小樊
34
2026-10-08 21:45:54
栏目: 编程语言

在 CentOS 上升级 C++(实际是升级 GCC / G++ 编译器)通常有几种方式,下面按推荐程度给你说明。


一、先确认当前版本

g++ --version
gcc --version

如果是 4.8.5(CentOS 7 默认),确实偏旧。


二、方式一(推荐):使用 SCL(Software Collections)

适合 CentOS 7 / 8,安全、简单、不影响系统

1. 安装 SCL

yum install -y centos-release-scl

2. 安装新版本 GCC(如 11)

yum install -y devtoolset-11-gcc devtoolset-11-gcc-c++

3. 临时启用

scl enable devtoolset-11 bash
g++ --version

4. 永久生效(可选)

echo "source /opt/rh/devtoolset-11/enable" >> ~/.bashrc

✅ 优点:

  • 不破坏系统默认 gcc
  • 可多版本共存

三、方式二:使用第三方仓库(如 ELRepo)

适合需要长期默认替换系统 gcc 的情况。

yum install -y epel-release
yum install -y gcc gcc-c++

但 CentOS 官方仓库版本仍偏旧,不推荐用于新 C++ 标准。


四、方式三(高级):源码编译 GCC

适合需要 GCC 12 / 13 / 14 等最新版本。

1. 安装依赖

yum groupinstall -y "Development Tools"
yum install -y gmp-devel mpfr-devel libmpc-devel

2. 下载并编译

wget https://ftp.gnu.org/gnu/gcc/gcc-13.2.0/gcc-13.2.0.tar.gz
tar -xf gcc-13.2.0.tar.gz
cd gcc-13.2.0
./configure --enable-languages=c,c++ --disable-multilib
make -j$(nproc)
make install

⚠️ 注意:

  • 编译时间长(30 分钟~几小时)
  • 可能影响系统稳定性

五、CentOS 8 / Stream 用户

可以直接用:

dnf install gcc-toolset-12

六、验证 C++ 标准支持

g++ -std=c++17 test.cpp -o test
g++ -std=c++20 test.cpp -o test

七、总结建议

场景 推荐方式
CentOS 7 正常开发 devtoolset-11
需要最新 C++ 源码编译
生产稳定环境 SCL
新系统 CentOS Stream + dnf

如果你告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • 需要的 C++ 标准(11 / 17 / 20)

我可以给你精确命令。

0 踩