對 package-1.0.tar.gz,一個包含了簡單的、符合 “GNU 編碼標準” 和 “FHS(檔案系統層級規範)” 的 C 語言源代碼的程式來說,它在 Debian 下打包工作可以按照下列流程,使用 debmake 命令進行。
$ tar -xvzf package-1.0.tar.gz $ cd package-1.0 $ debmake ... Make manual adjustments of generated configuration files $ debuild
如果跳過了對生成的配置檔案的手工調整流程,則最終生成的二進位制套件將缺少有意義的套件描述資訊,但是仍然能為 dpkg 命令所使用,在本地部署環境下正常工作。
![]() | 注意 |
---|---|
The debmake command only provides decent template files. These template files must be manually adjusted to their perfection to comply with the strict quality requirements of the Debian archive, if the generated package is intended for general consumption. |
If you are new to Debian packaging, focus on understanding the overall process rather than worrying about the details.
If you are familiar with Debian packaging, you’ll notice that debmake is similar to the dh_make command. This is because debmake is designed to replace the functionality historically provided by dh_make. [3]
debmake 命令設計提供如下特性與功能:
現代的打包風格
靈活性
合理的預設行為
額外的功能
The debmake command delegates most of the heavy lifting to its back-end packages: debhelper, dpkg-dev, devscripts, sbuild, schroot, etc.
![]() | 提示 |
---|---|
Ensure that you properly quote the arguments of the -b, -f, -l, and -w options to protect them from shell interference. |
![]() | 提示 |
---|---|
非原生套件是標準的 Debian 套件。 |
![]() | 提示 |
---|---|
本文件中所有套件構建範例的詳細日誌可以由 “節 14.14, “細節”” 一段給出的操作來取得。 |
![]() | 注意 |
---|---|
The generation of the debian/copyright file, and the outputs from the -c (see “節 16.3, “debmake -cc””) and -k (see “節 16.6, “debmake -k””) options involve heuristic operations on the copyright and license information. They may produce some erroneous results. |
[3] Before dh_make, the deb-make command was popular. The current debmake package starts its version from 4.0 to avoid version conflicts with the obsolete debmake package, which provided the “deb-make” command.