使用 debuild 构建包时如何传递自定义选项进行配置?

Tes*_*418 22 debian

简短的背景:我正在使用 Debian Sid。目前 audacity 包与 pidgin 包冲突,因为 gstreamer0.10-plugins-bad 已经过时了。我正在尝试重建它,但其中一个单元测试失败了,因为我不需要的一个插件导致了段错误。我需要禁用这些测试,并且有一个配置选项,但我不知道如何通过它。

那么,如何使用自定义选项运行配置?是通过将它们传递给 debuild,还是通过编辑 debian 目录中的某个文件?到目前为止,我只使用了 Gentoo ebuild,与 Debian 控制文件相比,它们非常简单,我仍然发现它们完全无法破译。

小智 31

您可以通过编辑 debian/rules 文件来解决这个问题。dh_auto_configure在文件末尾添加要覆盖的新目标。在下面的片段中,我通过更改 configure 的安装前缀来覆盖 dh_auto_configure。

override_dh_auto_configure:
    dh_auto_configure -- --prefix=/opt/uruk
Run Code Online (Sandbox Code Playgroud)

请注意,您可以替换为--prefix=/opt/uruk适合您的任何配置选项。

有关更多信息,请查看此手册页


Arr*_*ter 14

debian/rules文件是configure从哪里调用的。

根据用于该特定规则脚本的系统,configure 可能会或可能不会在文件中直接执行。如果不是,则该包使用的系统检测到它需要执行它并这样做。

此外,根据包使用的系统,规则文件中可能会使用一个变量来定义传递给 configure 的选项。如果它存在,它可能位于文件顶部附近,这将是您进行更改的最佳位置。

  • 谢谢,在我的情况下,`rules` 中似乎有 `DEB_CONFIGURE_EXTRA_FLAGS` 变量传递给 `./configure`。 (4认同)