从源代码编译程序会加速我的操作系统吗?

我在某个地方读到,说我应该在Ubuntu中删除我的默认程序,然后从源代码构建它们以加快系统速度。这样做会有效吗?

我对你从哪里得到这个信息的来源很感兴趣。 - popey
5个回答

不,而且这样做所花费的时间也不值得,更不用说你将无法再直接从Ubuntu获取安全更新了。

唯一情况下我会自己构建软件是当你需要一个没有任何存储库中的软件版本时,考虑下载源代码。从Ubuntu存储库中下载依赖项(开发库等),在更新时进行构建。
我并不想显得不尊重,因为我也包括在内,但总体来说,软件包维护者会比你制作出更好的构建版本。除非你的构建选项启用了某种硬件加速,否则你不会看到很大的差别。
我曾经使用Linux From ScratchGentoo从零开始编译完整的系统,并发现只有在真正低功率和特定硬件上,如PlayStation 2和迷你ITX主板上的1GHz Atom CPU,才感受到性能改进。请记住,我在这些系统上被要求这样做,因为默认的编译标志无法正常工作。

答案是肯定的。
通过为您的个人电脑编译操作系统,删除所有不需要的模块,并根据您的架构进行编译和优化硬件,并使用最新的编译器,您可能会获得1-2%的性能提升。
随着时间的推移,已经证明像Gentoo这样的发行版在性能上有一点改进,但缺点是它并不值得这么做。(别误会,Gentoo是一个很棒的发行版,只是它不是大众市场的发行版)
突然间,您将不得不跟踪系统的所有软件更新,如果新版本出现问题,您需要了解底层应用程序以调试为什么无法构建。
已经有人在优化操作系统了,只有当您想花几天时间作为爱好或研究原因来做这个时才去做。

这不值得努力。如果你愿意,可以尝试一下Gentoo Linux,它没有预编译的软件包(好吧,有一些),而且还有一个名为portage的软件包管理器,可以为你的电脑编译软件。但是你可能看不出什么区别。


不,除非你在编译时使用了特定的选项来帮助或者编译时去掉了很多选项...比如为REE使用tcmalloc或从FFmpeg中移除大量的编解码器...只是说一下 - 这取决于具体情况。