Dou*_* T. 8 compiling source package-management
通过从源头构建,你有什么好处吗?代码是否更好地针对您的硬件架构进行了优化?总的来说,它优化得更好吗?
为什么有人会选择从源代码构建而不是使用像 APT/yum 这样的包管理系统?如果有某种优化收益何时超过包管理系统的好处?
Sha*_*off 11
从源代码构建提供了以下选项,这些选项在使用二进制包管理器的版本时不可用。
从源代码编译允许您:
我最近做了这件事。
我在 Slackware 11.0 linux 系统上从源代码编译了 openssl-1.0.something。我想修补密码登录的事情,在登录失败时暂停 7 秒,以便缓和那些烦人的中文 ssh 密码猜测者。
我在同一个 Slackware 11.0 系统上编译了 Apache httpd 2.2.17,因为它带有 Apache 2.0.something,我想使用来自另一个系统的 2.2.x httpd.conf。
想到这里,我也为同一个系统编译了Alpine 2.0(email客户端,pine后续)。为什么是 Slackware 11.0?它运行在大约 2003 年的带有英特尔“Brookdale”显卡的机器上,而任何后来的 Slackware 都不支持记录不完整的英特尔显卡。
在另一台机器上,我从github拉取了TI ACX111无线芯片的支持,并编译了一个新的驱动程序,让我可以使用9美元的无线网卡。
我还习惯性地重新编译 Linux 内核,使它们特定于它们运行的机器。
所以就我而言,这是定制、硬件支持和“仅仅因为”的各种原因。
鉴于我们对统一人群中流行病学的了解 (http://www.usenix.org/publications/login/2005-12/openpdfs/geer.pdf) 为什么不是每个人都在自己的系统上从源代码编译,无论他们选择的编译时选项?这将形成一个更加抗病毒和蠕虫的群体。