【问题标题】:Is there any issue in upgrading GCC version to other than the ones come with distro?将 GCC 版本升级到发行版附带的版本之外是否有任何问题?
【发布时间】:2018-01-31 15:08:44
【问题描述】:

我使用的是 RHEL7.2,默认 GCC 版本是 4.8.5 20150623

出于几个原因,我想将 GCC 升级到 6.1 及更高版本。 (如 C++14 支持,良好的清理 选项,SSO)

This link 表示发行版由于某些原因保留默认版本的 GCC,否则可能会破坏 ABI。

如果我使用相同的编译器构建所有库/文件,是否可以升级 GCC?我还需要注意什么吗?

【问题讨论】:

  • 这取决于你要做什么。如果您需要重建内核,最好还是使用官方编译器。如果您在不修改内核的情况下进行应用程序开发,我会选择您可以使用的最新版本(截至 2018 年 1 月 26 日的 7.3.0)。我会与官方版本分开安装升级版本;我不会修改官方版本,但我也不会使用它。
  • @JonathanLeffler 用于应用程序开发。但是我提到的链接给出了一些原因,说明为什么在发行版中它没有升级。只有在编译内核时才适用吗?
  • 我还没有阅读你的链接;我要做的第一件事是修复问题中的链接,使其可用。根据我的经验,如果您在要运行它的系统上构建编译器,您应该不会遇到问题。我从来没有遇到过问题。 (出于我讨厌的晦涩原因,我的一台工作机器正在运行古老的 RHEL 5.x;它还安装了 GCC 7.3.0(以及 7.2.0、6.x 和 5.x)——我构建了它们在机器上——我从来没有遇到过问题。如果你导入其他地方构建的 GCC,你可能会遇到问题。)。我主要使用 C 语言工作,但也有 C++。

标签: c++ gcc


【解决方案1】:

您不想更新/替换系统,因为这可能会导致不兼容/ABI 问题。

在不同的位置安装新的 gcc。

或者,更简单,只需获取Red Hat Developer Toolset

【讨论】:

    猜你喜欢
    • 2023-01-16
    • 2016-09-06
    • 1970-01-01
    • 2022-11-14
    • 1970-01-01
    • 2021-03-12
    • 1970-01-01
    • 2012-11-22
    • 1970-01-01
    相关资源
    最近更新 更多