如何使用一份配方为不同的Ubuntu系列创建软件包(在./debian/changelog中遇到问题)?

启动台的测试功能允许使用配方创建Ubuntu软件包。我已经成功使用它们,并且现在可以用它们来打包我的项目。
然而,我在./debian/changelog文件上遇到了一些问题。我需要填写一个分发名称([软件包名称]([版本])[分发];[紧急程度])。假设我在那里放入了"maverick"。然后我使用配方请求构建。我选择同时为maverick和natty构建。结果是,在PPA中的natty软件包的"分发"字段被设置为"maverick",这看起来是无效的(实际上,似乎只有changelog会有这个错误的信息,但当我收到通知邮件说我的软件包已发布给natty时,它也说:"分发:maverick"),
这样可以吗?我甚至不确定这是否是错误的,但如果是错误的,那么我如何使用配方来为多个Ubuntu系列构建一个软件包,只使用一个changelog文件呢?
1个回答

在这种情况下,分发领域是无关紧要的。请查看官方的Ubuntu存档。当然,你会看到许多软件包的顶部变更日志条目中的分发版本是“不稳定”。同样地,所有上传到更新存储库的内容实际上都是从建议存储库复制过来的。因此,在maverick-updates中的一个软件包实际上会在变更日志中显示为maverick-proposed。
分发领域的重要性取决于使用它的工具。例如,如果你使用dput上传到你的PPA时使用以下命令:~<your_launchpad_id>/<ppa_name>/ubuntu/,那么变更日志中的分发领域将确定该软件包将为哪个版本进行构建。但是,即使如此,你也可以通过直接上传到你想要的版本来覆盖这一设置,方法如下: ~<lp_name>/ppa/ubuntu/<ubuntu_release> Launchpad的分支构建服务使用了从一个PPA系列复制软件包的能力。它实际上并不关心变更日志中的内容。所以你目前的做法是正确的。

请你能否更明确地回答并给出一个实际例子?具体来说,我通常使用dput ppa:landronimirc/experimental "gigolo_0.4.2-1~precise~ppa1_source.changes"命令将*.changes文件上传到PPA。如果按照你的建议执行dput ~landronimirc/experimental/ubuntu "gigolo_0.4.2-1~precise~ppa1_source.changes",那么会出现No host ~landronimirc/experimental/ubuntu found in config错误。所以从这个意义上说,我不确定我是否理解了你的答案。 - landroni