在 CentOS 上升级 C++(即 GCC 的 C++ 编译器 g++)版本,常见做法有几种,取决于你使用的 CentOS 版本(CentOS 7 / 8 / Stream)。下面按最实用、最安全的方式说明。
g++ --version
或
gcc --version
CentOS 7 默认是 gcc 4.8.5,太老。
yum install -y centos-release-scl
yum install -y devtoolset-11
可选版本:
scl enable devtoolset-11 bash
然后再看:
g++ --version
echo "source /opt/rh/devtoolset-11/enable" >> ~/.bashrc
适合需要 GCC 12+,但非常耗时(1~2 小时)。
dnf install -y gcc-c++ gcc-toolset-11
启用:
source /opt/rh/gcc-toolset-11/enable
dnf install -y gcc-toolset-12
echo '#include <iostream>
int main(){ std::cout<<"C++17 OK\n"; }' > t.cpp
g++ -std=c++17 t.cpp -o t && ./t
✅ 必须 source enable 或新开 shell
export CC=/opt/rh/devtoolset-11/root/usr/bin/gcc
export CXX=/opt/rh/devtoolset-11/root/usr/bin/g++
| 系统 | 推荐方式 |
|---|---|
| CentOS 7 | devtoolset-11 |
| CentOS 8 | gcc-toolset-11/12 |
| 需要最新 | 编译或容器 |
如果你告诉我:
我可以给你精确命令。