dh-make 是构建 debian 软件包的标准方法吗?

Han*_*ger 8 packaging

我已经开始为我的软件创建一个 .deb 包,然后我偶然发现的方法(我对域一无所知)基本上是这样的:

  • 创建这样的目录结构
-- pkg-dir
   -- DEBIAN
      -- controlfile
      -- postinst
      -- postrm
      -- conffiles
   -- usr
      -- share
         -- myapp
   -- etc
      -- myapp
Run Code Online (Sandbox Code Playgroud)
  • fakeroot dpkg-deb --build pkg-dir
  • 林田pkg.deb

然而,这些天我发现的信息都指向 dh-make。dh-make 是新的还是首选的方式?我的方法从何而来?我想在未来使用标准方式,但现在我想完成我已经开始使用它的时间,因为我有时间压力。我在哪里可以获得有关我的方法的更多信息?

ger*_*ijk 7

您可以通过多种方式创建 Debian 软件包。dh-工具是帮助您创建正确目录结构和文件的辅助脚本。dh-make是最基本的一个,但有很多启发式方法,并且可以很好地与使用 GNU 自动工具(./configuremakemake install)的软件配合使用。它会为你做很多工作。

然后你就可以用它debuild来创建源代码和二进制包了。

“你的方式”只是从二进制文件构建。这是不需要的,因为您不能为其他发行版(发行版)或体系结构构建。此外,Debian/Ubuntu 需要有一个源包才能包含在存储库中(以及许多其他要求和指南)。有关更多信息,请参阅@saji89 提供的链接。我还建议您下载软件包并检查它们是如何组合在一起的,使用apt-get source packagename.

更新

您稍后在评论中提到您正在打包 Java 应用程序。Java 包装上Debian wiki提到了这一点:

实际上不需要使用 javahelper,但是在没有 javahelper 的情况下实现所需的策略元素非常困难,因此假设您将使用 javahelper。

因此,我建议开始阅读有关如何使用 javahelper 和 DH 进行打包,或者 DH 的替代方案:CDBS。