章 1. 概覽

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 命令所使用,在本地部署環境下正常工作。

注意

這裡的 debmake 命令只提供一些不錯的模板檔案。如果生成的套件需要釋出出去供公眾使用的話,這些模板檔案必須手工調整至最佳狀態以遵從 Debian 倉庫的嚴格質量標準。

如果您在 Debian 打包方面還是個新手的話,此時不要過多在意細節問題,請先確立一個大致流程的印象。

如果您曾經接觸過 Debian 打包工作,您會注意到這和 dh_make 命令很像。這是因為 debmake 命令設計時便旨在替代歷史上由 dh_make 命令所提供的功能。[3]

debmake 命令設計提供如下特性與功能:

debmake 命令將大多數重量級工作分派給了其後端套件:debhelperdpkg-devdevscriptspbuilder,等等。

提示

請確保將 -b-f-l-w 選項的引數使用引號合適地保護起來,以避免 shell 環境的干擾。

提示

非原生套件是標準的 Debian 套件。

提示

本文件中所有套件構建範例的詳細日誌可以由 節 8.14, “細節” 一段給出的操作來取得。

注意

所產生的 debian/copyright 檔案,以及 -c節 6.3, “debmake -cc”)和 -k節 6.4, “debmake -k”)選項的輸出都涉及了對版權和授權資訊的啟發式操作。它們具有侷限性,可能會輸出某些錯誤的結果。



[3] 歷史上還存在過 deb-make 命令,它在 dh_make 之前曾經流行過。當前的 debmake 套件的版本從 4.0 起始,其目的便是避免和廢棄的 debmake 套件的版本產生重疊。舊有的對應套件提供了 deb-make 命令。