编译程序:: 如何处理以前的程序?

编译程序:: 如何处理以前的程序?

我正在尝试进入开源开发的世界,并且有一个问题:

每次我想编译最新版本时,我通常都会下载 tar 包并进行编译。但是,最后我得到的是同一软件的两个版本。一个通过 sudo apt 获得,另一个通过编译获得。我该如何处理这个问题?

我应该删除 sudo apt 并保留开发版本还是让它们都保留?

另外,我知道这是一个愚蠢的问题,但我如何确保我的代码是最新的?我是否必须每天下载(或签出)夜间版本并进行编译每天

答案1

如何处理不同版本取决于您。这取决于软件的类型。

是的,如果您选择自己编译软件,则必须手动更新。这意味着下载并应用新源代码。如果程序是用编译语言编写的,则在更改其源代码后,您需要重新编译该程序。

但是,您永远不必在 apt-get 版本和自编译版本之间做出选择。无论如何,在安装软件之前,您应该打包并安装它。您肯定想要获取并学习checkinstall。它非常易于使用。sudo make install您可以执行 ,而不是sudo checkinstall。然后它会要求您填写有关软件包的表格,然后它会安装该软件包。

这听起来似乎需要付出一些努力。事实也确实如此。不过,还是有办法彻底改善这种情况的。

  1. 保留您自己的本地代码分支。
  2. 仅下载自您从上游拉取以来发生的更改。
  3. 如果您的分支中还没有 deb 打包信息,请将其添加到其中。这样,您可以轻松地保持其最新状态。
  4. 休息一下,真正体会一下分叉到底是何等激进的一步。您的分支和上游主干之间的变化越大,您需要手动执行的工作就越多。
  5. 编写脚本来自动执行上述任务。
  6. 保留一个PPA,以便您自己和其他人更轻松地安装和使用编译后的软件。

Launchpad 可以为您执行上述任务,因此您可以用最少的努力获得自己的每日仓库。这称为构建配方您仍然需要从上游主干分支,与您自己的主干合并,然后将新主干推送到 Launchpad。这很好,因为无论如何您都希望查看上游代码更改。

因此,这需要更多的学习,但一旦正确设置,您每天就可以省去大量的工作。花些时间好好学习是值得的。即使要花几周时间才能真正适应它,你也应该这样做。

相关内容