Fedora 29 从默认 BuildRoot 中删除 GCC 引起激烈争论

栏目: IT资讯 · 发布时间: 7年前

内容简介:Fedora 29 中实现了一项令人惊讶的有争议的变化 —— 从默认的 BuildRoot 中删除 GCC 和 GCC-C++,以便将 Fedora 包与 Koji 和 Mock 组合。 到目前为止,我们总是认为 GCC(包括 GCC C++ 编译器)默认存在于每个...

Fedora 29 中实现了一项令人惊讶的有争议的变化 —— 从默认的 BuildRoot 中删除 GCC 和 GCC-C++,以便将 Fedora 包与 Koji 和 Mock 组合。

到目前为止,我们总是认为 GCC(包括 GCC C++ 编译器)默认存在于每个 build-root 中。但实际情况是,现在有更多的软件包使用了 Go, Rust, Python, Node.js 以及其他现代语言编写,C/C++ 应用程序的比例正在逐渐下降。因此,Koji/Mock 的默认构建环境中不再包含对 GCC C/C++ 的支持,反过来,这应该有助于非 C/C++ 包的包构建(package build)时间,因为将不再需要把它们拉入 gcc/gcc-c++ 中,同样的,这也将会有一个更干净的 buildroot 环境。

需要 C 或 C++ 编译器的软件包现在需要将其列为 BuildRequires 标记的一部分。实际上,对于这个 Fedora 29 周期来说,这不应该是一个很大的变化,因为在即将进行大规模重新构建之前,他们已经将 gcc/g++ 添加到需要所述编译器的所有软件包中。而对于用户来说,这应该几乎没有区别。我们可以看到,确切的计划已经在 Fedora Wiki 上已经列出了几个月。

但最近几天,当这个即将发生的转变的通知被发布到 Fedora devel 列表时,它变成了一些利益相关者的激烈交流。表达的担忧包括:

添加 "BuildRequires: gcc" (或 gcc-c++) 是相当明确的,因为将来使用 LLVM Clang 或其他的替代编译器构建 C/C++ 包可能需要进行大量更改。当然,Fedora 中并非所有当前的 C/C++ 软件包都在 Clang 下完全构建。有人建议改为使用构建取决于 glibc-devel 或 libstdc++,但这会带来一系列挑战。

从好的方面来看,现在应该能更清楚地看到有多少 Fedora 软件包需要 C/C++,因为之前 GCC 始终存在,而依赖其他打包命令来估计总数是相当不透明的。

事实上,这个主题之前已经在2月到3月期间由 FESCo 讨论和批准,但似乎有些成员错过了它或者当时不想参与。如果你对整个讨论充满兴趣,可以通过邮件列表存档找到相关信息。

原文:https://www.phoronix.com/ 编译:开源中国


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C标准库

C标准库

P. J. Plauger / 卢红星、徐明亮、霍建同 / 人民邮电出版社 / 2009-7 / 79.00元

本书是由世界级C语言专家编写的C标准库经典著作。英文版已经重印十多次,影响了几代程序员。 本书结合C标准的相关部分,精辟地讲述了每一个库函数的使用方法和实现细节,而这正是一个真正的C程序员所必须掌握的。更重要的是,书中给出了实现和测试这些函数的完整源代码,可以让你更深入地学习C语言。不仅如此,本书还讨论了一些即使是最有经验的C程序员通常也不熟悉的知识,比如国际化和独立于区域设置的程序的编写、......一起来看看 《C标准库》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

MD5 加密
MD5 加密

MD5 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具