在 CentOS 上,C++ 标准库(通常是 libstdc++,由 GCC 提供)的版本和支持的 C++ 标准,取决于系统自带的 GCC 版本 以及你是否安装了更新的工具链(如 devtoolset / GCC 新版本)。下面按常见 CentOS 版本说明。
实际使用建议:CentOS 7 默认只适合 C++11 及以前。
CentOS 7 常用方式:
| devtoolset | GCC 版本 | C++ 标准 |
|---|---|---|
| 7 | 7.3 | C++14 / C++17(实验) |
| 8 | 8.3 | C++14 / C++17 |
| 9 | 9.3 | C++17 / C++20(部分) |
| 10 | 10.3 | C++20(大部分) |
| 11 | 11.2 | C++20 |
使用方式示例:
yum install centos-release-scl
yum install devtoolset-11
scl enable devtoolset-11 bash
CentOS 也支持:
llvm / libcxx-static-libstdc++| 需求 | 推荐 |
|---|---|
| CentOS 7 传统环境 | C++11 |
| CentOS 7 + devtoolset | C++17 / C++20 |
| CentOS 8+ | C++17 / C++20 |
| 最新标准 | CentOS Stream 9 / 自定义 GCC |
如果你愿意,可以告诉我:
我可以给你具体的安装和编译命令。