如何构建和编译 bzr 分支以进行测试

3 apt patch development bazaar install-from-source

当我使用下拉 bzr 分支时

bzr branch lp:ubuntu/<package name>
Run Code Online (Sandbox Code Playgroud)

我得到一组源文件。然而,当我去

apt-get source <package name>
Run Code Online (Sandbox Code Playgroud)

我得到另一个。命令

debuild
Run Code Online (Sandbox Code Playgroud)

在第一个上不起作用,但在第二个上不起作用,这是在 Ubuntu 上从源代码构建软件包的推荐方式,我认为 Debian 也是如此(请参阅此问题)。

如果我想向 Ubuntu 提交补丁,最简单的方法是我们 bzr 到branch代码,然后push在我完成后返回,这显然不适用于该apt-get source方法,因为下载的文件列表不同。

我应该如何提取源代码,测试补丁,然后将其推出?现在,似乎我必须apt-get source在拉下分支bar branch并完全重做那里的更改之前使用该方法测试更改。

and*_*ing 5

为了从集市分支构建,您正在寻找的命令是bzr builddebbzr builddeb -S源包。这是bzr-builddeb 的一部分 安装 bzr-builddeb 包裹。

有关更多信息,您应该查看位于以下位置的Ubuntu 分布式开发文档和 bzr-builddeb 的文档:

/usr/share/doc/bzr-builddeb/user_manual/index.html
Run Code Online (Sandbox Code Playgroud)

具体来说:

/usr/share/doc/bzr-builddeb/user_manual/building.html
Run Code Online (Sandbox Code Playgroud)

bazaar 分支和检索到的存档中的包apt-get source应该具有相同的内容。我能想到的关于它们可能不同的唯一原因是,如果包导入器对您感兴趣的特定包失败。有一个站点跟踪哪些包导入失败。