33

Fedora 29将GCC从默认的Build Root中删除

 5 years ago
source link: https://www.linuxprobe.com/fedora-29-gcc-build-root.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
导读 Fedora 29 中实现了一项令人惊讶的有争议的变化 —— 从默认的 BuildRoot 中删除 GCC 和 GCC-C++,以便将 Fedora 包与 Koji 和 Mock 组合。到目前为止,我们总是认为 GCC(包括 GCC C++ 编译器)默认存在于每个 build-root 中。

为Fedora 29实施的一个令人惊讶的争议性变化是从默认的BuildRoot中删除GCC和GCC-C++,以便与Koji和Mock组装Fedora包。

到目前为止,我们总是暗示GCC(包括GCC C++编译器)默认存在于每个build-root目录中。但是现在有更多的软件包用Go,Rust,Python,Node.js和其他现代语言编写,C/C++应用程序的比例正在下降。因此,Koji/Mock中的默认构建环境不再暗示GCC C/C ++支持,这反过来应该有助于打包非C/C++包的构建时间,因为它们将不再需要拉入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讨论和批准,但似乎有些成员错过了它或者当时不想参与。那些对整个讨论充满好奇的人可以通过邮件列表存档找到它。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK