从源代码编译或从.deb包安装是否更好?

有时候,当从Internet下载软件时,我发现有一个.deb软件包可以用于我的Debian / Ubuntu以及一个tarball来编译。 一开始我只是简单地使用包来安装,甚至不敢尝试编译。 即使它的声音让我有点害怕。 然而,现在,当我有选择时,我有时会发现自己处于两难境地:与.deb包相比,从源代码编译是否有不受欢迎的优势? 我希望能在这里找到,谢谢。

从源代码编译的优点是,您可以使用某些标记/选项编译包,这些标记/选项可能在库存标准的Ubuntu包中丢失/禁用。 此外,它可以轻松安装相同程序的多个版本。 此外,您可以选择可能已从Ubuntu存储库中删除或尚未存在的软件包的确切版本(例如:我的/ opt /目录中有几个版本的Python 2.4.x,因为我需要它来运行一些旧版本软件)。

从源代码编译的缺点是,除非你构建一个.deb然后安装它,正常的“./configure; make; sudo make install”程序让Ubuntu的包管理器完全不知道你正在做的改变,所以你’不会为手动编译的软件获得任何更新; 如果你不小心将它安装在一个单独的位置,那么包管理器可能会稍后覆盖/破坏你的包。

简而言之:始终考虑首先从标准的Ubuntu存储库安装,然后考虑安装.deb; 如果你确切知道为什么需要这样做,那么只能从源代码编译。

我昨天正在争论这件事。 我认为不要构建任何易碎的东西是非常重要的,因为众所周知,没有最新的和良好的文档,特别是当你使用脆弱的系统时,没有时间对抗火灾和写作文档,并且一切都很健壮,文档不需要那么多。 所以你永远不应该从源代码编译,找到另一个解决方案,使用另一个软件,改变你的架构,但不要使用在更新后会破坏的东西。 是的,它与内核版本没有任何关系,它与你的机器的架构有关,而现在你很难从源代码编译中获得显着的差异,我打赌你不会得到任何。

安装.deb肯定要容易得多,尽管如果可以的话,最好的办法是在repo或ppa中找到它,以便为您提供更新。

AFAIK自己编译没有什么好处,除非你打算先改变它。 如果您只是想要软件,请安装.deb