15.7. 各种红帽产品的 C++ 兼容性


红帽生态系统包括多个 Red Hat Enterprise Linux 和 Red Hat Developer Toolset 提供的 GCC 编译器和 linker 版本。两者之间的 C++ ABI 兼容性如下:

  • 基于 GCC 4.8 且作为 Red Hat Enterprise Linux 7 的一部分提供 的系统编译器 仅支持编译和连接 C++98 标准(也称为 C++03),及其使用 GNU 扩展的功能。
  • 任何符合 C++98 的二进制文件或库都使用选项 -std=c++98-std=gnu++98 明确构建,无论使用的编译器是什么版本是什么。
  • 只有在使用 Red Hat Developer Toolset 中的编译器并使用相应标记构建时,才会支持使用 C++11 和 C++14 语言版本来构建的 C++ 对象。
  • 当使用 Red Hat Developer Toolset 和 Red Hat Enterprise Linux 工具链构建 C++ 文件时,首选编译器和 linker 的红帽开发人员工具集版本。
  • Red Hat Enterprise Linux 6 和 7 中编译器的默认设置是 -std=gnu++98 到 4.1。也就是说,使用 GNU 扩展的 C++98。
  • Red Hat Developer Toolset 6、6.1、7、7.1、8.1、9、9、9、9、9、10 和 10 中的编译器的默认设置是 -std=gnu++14。也就是说,使用 GNU 扩展的 C++14。

其它资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.