en to zh translation catalogue (1545 entries)

note: type: Content of: <book><bookinfo><title>
en: Guide for Debian Maintainers
zh: Debian 維護者指南

note: type: Content of: <book><bookinfo><legalnotice><simpara>
en: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
zh: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

note: type: Content of: <book><bookinfo><legalnotice><simpara>
en: This guide was made using the following previous documents as its reference:
zh: 本指南在撰寫過程中參考了以下幾篇文件：

note: type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><simpara>
en: “Making a Debian Package (AKA the Debmake Manual)”, copyright © 1997 Jaldhar Vyas.
zh: “Making a Debian Package (AKA the Debmake Manual)”, 版權所有 © 1997 Jaldhar Vyas.

note: type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><simpara>
en: “The New-Maintainer’s Debian Packaging Howto”, copyright © 1997 Will Lowe.
zh: “The New-Maintainer’s Debian Packaging Howto”, 版權所有 © 1997 Will Lowe.

note: type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><simpara>
en: “Debian New Maintainers’ Guide”, copyright © 1998-2002 Josip Rodin, 2005-2017 Osamu Aoki, 2010 Craig Small, and 2010 Raphaël Hertzog.
zh: “Debian New Maintainers’ Guide”, 版權所有 © 1998-2002 Josip Rodin, 2005-2017 Osamu Aoki, 2010 Craig Small 以及 2010 Raphaël Hertzog。

note: type: Content of: <book><bookinfo><legalnotice><simpara>
en: The latest version of this guide should be available:
zh: 本指南的最新版本應當可以在下列位置找到：

note: type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><simpara>
en: in the <ulink url="https://tracker.debian.org/pkg/debmake-doc">debmake-doc package</ulink> and
zh: 在 <ulink url="https://tracker.debian.org/pkg/debmake-doc">debmake-doc 套件</ulink> 中，以及

note: type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><simpara>
en: at the <ulink url="https://www.debian.org/doc/devel-manuals">Debian Documentation web site</ulink>.
zh: 位於 <ulink url="https://www.debian.org/doc/devel-manuals">Debian 文件網站</ulink>。

note: type: Content of: <book><bookinfo><abstract><simpara>
en: This “Guide for Debian Maintainers” (@@@debdate@@@)  tutorial guide describes the building of the Debian package to ordinary Debian users and prospective developers using the <emphasis role="strong">debmake</emphasis> command.
zh: 本篇《Debian 維護者指南》（@@@debdate@@@）教材文件針對普通 Debian 使用者和未來的開發者，描述了使用 <emphasis role="strong">debmake</emphasis> 命令構建 Debian 套件的方法。

note: type: Content of: <book><bookinfo><abstract><simpara>
en: This guide focuses on the modern packaging style and comes with many simple examples.
zh: 本指南注重描述現代的打包風格，同時提供了許多簡單的範例。

note: type: Content of: <book><bookinfo><abstract><itemizedlist><listitem><simpara>
en: POSIX shell script packaging
zh: POSIX shell 指令碼打包

note: type: Content of: <book><bookinfo><abstract><itemizedlist><listitem><simpara>
en: Python3 script packaging
zh: Python3 指令碼打包

note: type: Content of: <book><bookinfo><abstract><itemizedlist><listitem><simpara>
en: C with Makefile/Autotools/CMake
zh: C 和 Makefile/Autotools/CMake

note: type: Content of: <book><bookinfo><abstract><itemizedlist><listitem><simpara>
en: multiple binary packages with shared library etc.
zh: 含有共享程式庫的多個二進位制套件的打包，等等。

note: type: Content of: <book><bookinfo><abstract><simpara>
en: This “Guide for Debian Maintainers” can be considered as the successor to the “Debian New Maintainers’ Guide”.
zh: 本篇《Debian 維護者指南》可看作《Debian 新維護者手冊》的繼承文件。

note: type: Content of: <book><preface><title>
en: Preface
zh: 前言

note: type: Content of: <book><preface><simpara><footnote><simpara>
en: You do need to know a little about Unix programming but you certainly don’t need to be a wizard. You can learn about the basic handling of a Debian system from the <ulink url="https://www.debian.org/doc/user-manuals#quick-reference">Debian Reference</ulink>. It contains some pointers to learn about Unix programming, too.
zh: 您的確需要對 Unix 程式設計有所瞭解，但顯然沒必要是這方面的天才。在 <ulink url="https://www.debian.org/doc/user-manuals#quick-reference">Debian 參考手冊</ulink> 中，您可以瞭解到使用 Debian 系統的一些基本方法和關於 Unix 程式設計的一些指引。

note: type: Content of: <book><preface><simpara>
en: If you are a somewhat experienced Debian user <placeholder type="footnote" id="0"/>, you may have encountered following situations:
zh: 如果您在某些方面算得上是有經驗的 Debian 使用者 <placeholder type="footnote" id="0"/> 的話，您可能遇上過這樣的情況：

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: You wish to install a certain software package not yet found in the Debian archive.
zh: 您想要安裝某一個套件，但是該軟體在 Debian 倉庫中尚不存在。

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: You wish to update a Debian package with the newer upstream release.
zh: 您想要將一個 Debian 套件更新為上游的新版本。

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: You wish to fix bugs of a Debian package with some patches.
zh: 您想要新增某些補丁來修復某個 Debian 套件中的缺陷。

note: type: Content of: <book><preface><simpara><footnote><simpara>
en: If you are not interested in sharing the Debian package, you can certainly work around your local situation by compiling and installing the fixed upstream source package into <emphasis role="strong">/usr/local/</emphasis>.
zh: 如果您對分享 Debian 套件不感興趣，您當然可以在本地環境中將上游的原始碼套件進行編譯並安裝至 <emphasis role="strong">/usr/local</emphasis> 來解決問題。

note: type: Content of: <book><preface><simpara>
en: If you wanted to create a Debian package to fulfill these wishes and to share your work with the community, you are the target audience of this guide as a prospective Debian maintainer. <placeholder type="footnote" id="0"/> Welcome to the Debian community.
zh: 如果您想要建立一個 Debian 套件來滿足您的需求，並將您的工作與社群分享，您便是本篇指南的目標讀者，即未來的 Debian 維護者。<placeholder type="footnote" id="0"/> 歡迎來到 Debian 社群。

note: type: Content of: <book><preface><simpara>
en: Debian has many social and technical rules and conventions to follow since it is a large volunteer organization with history.  Debian also has developed a huge array of packaging tools and archive maintenance tools to build consistent sets of binary packages addressing many technical objectives:
zh: Debian 是一個大型的、歷史悠久的志願者組織。因此，它具有許多需要遵守的社會上和技術上的規則和慣例。Debian 也開發出了一長串的打包工具和倉庫維護工具，用來構建一套能夠解決各種技術目標的二進位制套件：

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: packages build across many architectures (<xref linkend="variablesrules"/>)
zh: 跨多個架構構建的套件（<xref linkend="variablesrules"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: reproducible build (<xref linkend="reproducible"/>)
zh: 可重現的構建（<xref linkend="reproducible"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: clean build under clearly specified package dependencies and patches (<xref linkend="control"/>, <xref linkend="patches"/>, <xref linkend="chroot"/>)
zh: 在明確指定套件依賴和補丁情況下乾淨地構建（<xref linkend="control"/>, <xref linkend="patches"/>, <xref linkend="chroot"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: optimal splits into multiple binary packages (<xref linkend="split"/>)
zh: 拆分多個二進位制套件的最佳實踐（<xref linkend="split"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: smooth library transitions (<xref linkend="lib-trans"/>)
zh: 平滑的程式庫遷移（<xref linkend="lib-trans"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: interactive installation customization (<xref linkend="debconf"/>)
zh: 互動式安裝定製（<xref linkend="debconf"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: multiarch support (<xref linkend="multiarch"/>)
zh: 多架構（multiarch）支援（<xref linkend="multiarch"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: security enhancement using specific compiler flags (<xref linkend="harden"/>)
zh: 使用特定的編譯選項進行安全增強（<xref linkend="harden"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: continuous integration (<xref linkend="ci"/>)
zh: 持續整合（<xref linkend="ci"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: boot strapping (<xref linkend="bootstrap"/>)
zh: 自主生成（boot strapping <xref linkend="bootstrap"/>）

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: …
zh: ……

note: type: Content of: <book><preface><simpara>
en: These make it somewhat overwhelming for many new prospective Debian maintainers to get involved with Debian.  This guide tries to provide entry points for them to get started.  It describes the following:
zh: 這些目標也許會讓很多新近參與進 Debian 工作中的潛在 Debian 維護者感到迷茫而不知所措。本篇指南嘗試為這些目標提供一個著手點，方便讀者開展工作。它具體描述了以下內容：

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: What you should know before getting involved with Debian as a prospective maintainer.
zh: 作為未來潛在的維護者，您在參與 Debian 工作之前應該瞭解的東西。

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: What it looks like to make a simple Debian package.
zh: 製作一個簡單的 Debian 套件大概流程如何。

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: What kind of rules exist for making the Debian package.
zh: 製作 Debian 套件時有哪些規則。

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: Tips for making the Debian package.
zh: 製作 Debian 套件的小竅門。

note: type: Content of: <book><preface><itemizedlist><listitem><simpara>
en: Examples of making Debian packages for several typical scenarios.
zh: 在某些典型場景下製作 Debian 套件的範例。

note: type: Content of: <book><preface><simpara>
en: The author felt limitations of updating the original “New Maintainers' Guide” with the <emphasis role="strong">dh-make</emphasis> package and decided to create an alternative tool and its matching document to address modern requirements.  The result is the <emphasis role="strong">debmake</emphasis> (version: @@@debmakeversion@@@) package and this updated “Guide for Debian Maintainers” in the <emphasis role="strong">debmake-doc</emphasis> (version: @@@debversion@@@) package.
zh: 作者在更新原有的使用 <emphasis role="strong">dh-make</emphasis> 套件的“新維護者手冊”時感受到了文件的侷限性。因此，作者決定建立一個替代工具並編寫其對應的文件以解決某些現代的需求。其成果便是 <emphasis role="strong">debmake</emphasis>（當前版本：@@@debmakeversion@@@)）套件，以及這篇更新的“Debian 維護者指南”，可從 <emphasis role="strong">debmake-doc</emphasis>（當前版本：@@@debversion@@@）套件取得。

note: type: Content of: <book><preface><simpara>
en: Many chores and tips have been integrated into the <emphasis role="strong">debmake</emphasis> command making this guide simple.  This guide also offers many packaging examples.
zh: 許多雜項事務和小技巧都整合進了 <emphasis role="strong">debmake</emphasis> 命令，以使本指南內容簡單易懂。本指南同時提供了許多打包範例。

note: type: Content of: <book><preface><caution><simpara>
en: It takes many hours to properly create and maintain Debian packages. The Debian maintainer must be <emphasis role="strong">both technically competent and diligent</emphasis> to take up this challenge.
zh: 合適地建立並維護 Debian 套件需要佔用許多時間。Debian 維護者在接受這項挑戰時一定要確保 <emphasis role="strong">既能精通技術又能勤勉投入精力</emphasis>。

note: type: Content of: <book><preface><simpara>
en: Some important topics are explained in detail.  Some of them may look irrelevant to you. Please be patient. Some corner cases are skipped.  Some topics are only covered by the external pointers.  These are intentional choices to keep this guide simple and maintainable.
zh: 某些重要的主題會詳細進行說明。其中某些可能看起來和您沒什麼關係。請保持耐心。某些罕見案例會被跳過。某些主題僅使用外部連結提及。這些都是有意的行文安排，目標是讓這份指南保持簡單而可維護。

note: type: Content of: <book><chapter><title>
en: Overview
zh: 概覽

note: type: Content of: <book><chapter><simpara>
en: The Debian packaging of the <emphasis>package-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis>, containing a simple C source following the <ulink url="https://www.gnu.org/prep/standards/">GNU Coding Standards</ulink> and <ulink url="https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard">FHS</ulink>, can be done with the <emphasis role="strong">debmake</emphasis> command as follows.
zh: 對 <emphasis>package-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis>，一個包含了簡單的、符合 <ulink url="https://www.gnu.org/prep/standards/">GNU 編碼標準</ulink> 和 <ulink url="https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard">FHS（檔案系統層級規範）</ulink> 的 C 語言源代碼的程式來說，它在 Debian 下打包工作可以按照下列流程，使用 <emphasis role="strong">debmake</emphasis> 命令進行。

note: type: Content of: <book><chapter><simpara>
en: If manual adjustments of generated configuration files are skipped, the generated binary package lacks meaningful package description but still functions well under the <emphasis role="strong">dpkg</emphasis> command to be used for your local deployment.
zh: 如果跳過了對生成的配置檔案的手工調整流程，則最終生成的二進位制套件將缺少有意義的套件描述資訊，但是仍然能為 <emphasis role="strong">dpkg</emphasis> 命令所使用，在本地部署環境下正常工作。

note: type: Content of: <book><chapter><caution><simpara>
en: The <emphasis role="strong">debmake</emphasis> command only provides good 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.
zh: 這裡的 <emphasis role="strong">debmake</emphasis> 命令只提供一些不錯的模板檔案。如果生成的套件需要釋出出去供公眾使用的話，這些模板檔案必須手工調整至最佳狀態以遵從 Debian 倉庫的嚴格質量標準。

note: type: Content of: <book><chapter><simpara>
en: If you are new to Debian packaging, do not worry about the details and just get the big picture instead.
zh: 如果您在 Debian 打包方面還是個新手的話，此時不要過多在意細節問題，請先確立一個大致流程的印象。

note: type: Content of: <book><chapter><simpara><footnote><simpara>
en: The <emphasis role="strong">deb-make</emphasis> command was popular before the <emphasis role="strong">dh_make</emphasis> command.  The current <emphasis role="strong">debmake</emphasis> package starts its version from <emphasis role="strong">4.0</emphasis> to avoid version overlaps with the obsolete <emphasis role="strong">debmake</emphasis> package, which provided the <emphasis role="strong">deb-make</emphasis> command.
zh: 歷史上還存在過 <emphasis role="strong">deb-make</emphasis> 命令，它在 <emphasis role="strong">dh_make</emphasis> 之前曾經流行過。當前的 <emphasis role="strong">debmake</emphasis> 套件的版本從 <emphasis role="strong">4.0</emphasis> 起始，其目的便是避免和廢棄的 <emphasis role="strong">debmake</emphasis> 套件的版本產生重疊。舊有的對應套件提供了 <emphasis role="strong">deb-make</emphasis> 命令。

note: type: Content of: <book><chapter><simpara>
en: If you have been exposed to Debian packaging, this looks very much like the <emphasis role="strong">dh_make</emphasis> command.  This is because the <emphasis role="strong">debmake</emphasis> command is intended to replace functions offered historically by the <emphasis role="strong">dh_make</emphasis> command. <placeholder type="footnote" id="0"/>
zh: 如果您曾經接觸過 Debian 打包工作，您會注意到這和 <emphasis role="strong">dh_make</emphasis> 命令很像。這是因為 <emphasis role="strong">debmake</emphasis> 命令設計時便旨在替代歷史上由 <emphasis role="strong">dh_make</emphasis> 命令所提供的功能。<placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><simpara>
en: The <emphasis role="strong">debmake</emphasis> command is designed with the following features:
zh: <emphasis role="strong">debmake</emphasis> 命令設計提供如下特性與功能：

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: modern packaging style
zh: 現代的打包風格

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">debian/control</emphasis>: <emphasis role="strong">substvar</emphasis> support, <emphasis role="strong">multiarch</emphasis> support, multi binary packages, …
zh: <emphasis role="strong">debian/control</emphasis>：<emphasis role="strong">substvar</emphasis> 支援、<emphasis role="strong">multiarch</emphasis> 支援、多個二進位制套件、……

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">debian/rules</emphasis>: <emphasis role="strong">dh</emphasis> syntax, compiler hardening options, …
zh: <emphasis role="strong">debian/rules</emphasis>：<emphasis role="strong">dh</emphasis> 語法、編譯器強化選項、……

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: flexibility
zh: 靈活性

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: many options (<xref linkend="boption"/>, <xref linkend="options"/>, <xref linkend="manpage"/>)
zh: 許多選項（<xref linkend="boption"/>、<xref linkend="options"/>、<xref linkend="manpage"/>）

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: sane default actions
zh: 合理的預設行為

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: execute non-stop with clean results
zh: 執行過程不中斷，輸出乾淨的結果

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: generate the multiarch package, unless the <emphasis role="strong">-m</emphasis> option is explicitly specified.
zh: 生成多架構支援（multiarch）的套件，除非明確指定了 <emphasis role="strong">-m</emphasis> 選項。

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: generate the non-native Debian package with the “<emphasis role="strong">3.0 (quilt)</emphasis>” format, unless the <emphasis role="strong">-n</emphasis> option is explicitly specified.
zh: 生成非原生 Debian 套件，使用“<emphasis role="strong">3.0 (quilt)</emphasis>”格式，除非明確指定了 <emphasis role="strong">-n</emphasis> 選項。

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: extra utility
zh: 額外的功能

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: verification of the <emphasis role="strong">debian/copyright</emphasis> file against the current source (<xref linkend="koption"/>)
zh: 根據當前原始碼對 <emphasis role="strong">debian/copyright</emphasis> 檔案進行驗證（<xref linkend="koption"/>）

note: type: Content of: <book><appendix><section><simpara>
en: Make sure to protect the arguments of the <emphasis role="strong">-b</emphasis>, <emphasis role="strong">-f</emphasis>, <emphasis role="strong">-l</emphasis>, and <emphasis role="strong">-w</emphasis> options from shell interference by quoting them properly.
zh: 請確保將 <emphasis role="strong">-b</emphasis>、<emphasis role="strong">-f</emphasis>、<emphasis role="strong">-l</emphasis> 和 <emphasis role="strong">-w</emphasis> 選項的引數使用引號合適地保護起來，以避免 shell 環境的干擾。

note: type: Content of: <book><chapter><tip><simpara>
en: The non-native Debian package is the normal Debian package.
zh: 非原生套件是標準的 Debian 套件。

note: type: Content of: <book><chapter><tip><simpara>
en: The detailed log of all the package build examples in this document can be obtained by following the instructions in <xref linkend="details"/>.
zh: 本文件中所有套件構建範例的詳細日誌可以由 <xref linkend="details"/> 一段給出的操作來取得。

note: type: Content of: <book><chapter><note><simpara>
en: The generation of the <emphasis role="strong">debian/copyright</emphasis> file, and the outputs from the <emphasis role="strong">-c</emphasis> (<xref linkend="coption"/>) and <emphasis role="strong">-k</emphasis> (<xref linkend="koption"/>) options involve heuristic operations on the copyright and license information.  They may produce some erroneous results.
zh: 所產生的 <emphasis role="strong">debian/copyright</emphasis> 檔案，以及 <emphasis role="strong">-c</emphasis>（<xref linkend="coption"/>）和 <emphasis role="strong">-k</emphasis>（<xref linkend="koption"/>）選項的輸出都涉及了對版權和授權資訊的啟發式操作。它們具有侷限性，可能會輸出某些錯誤的結果。

note: type: Content of: <book><chapter><title>
en: Prerequisites
zh: 預備知識

note: type: Content of: <book><chapter><simpara>
en: Here are the prerequisites which you need to understand before you to get involved with Debian.
zh: 這裡給出您在投入 Debian 相關工作之前應當理解掌握的一些必備的預備知識。

note: type: Content of: <book><chapter><section><title>
en: People around Debian
zh: Debian 社群的工作者

note: type: Content of: <book><chapter><section><simpara>
en: There are several types of people interacting around Debian with different roles:
zh: 在 Debian 社群中有這幾類常見的角色：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">upstream author</emphasis>: the person who made the original program.
zh: <emphasis role="strong">上游作者（upstream author）</emphasis>：程式的原始作者。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">upstream maintainer</emphasis>: the person who currently maintains the program.
zh: <emphasis role="strong">上游維護者（upstream maintainer）</emphasis>：目前在上游維護程式程式碼的人。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">maintainer</emphasis>: the person making the Debian package of the program.
zh: <emphasis role="strong">套件維護者（maintainer）</emphasis>：製作並維護該程式 Debian 套件的人。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">sponsor</emphasis>: a person who helps maintainers to upload packages to the official Debian package archive (after checking their contents).
zh: <emphasis role="strong">贊助者（sponsor）</emphasis>：幫助維護者上傳套件到 Debian 官方倉庫的人（在通過內容檢查之後）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">mentor</emphasis>: a person who helps novice maintainers with packaging etc.
zh: <emphasis role="strong">導師（mentor）</emphasis>：幫助新手維護者熟悉和深入打包的人。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">Debian Developer</emphasis> (DD): a member of the Debian project with full upload rights to the official Debian package archive.
zh: <emphasis role="strong">Debian 開發者</emphasis>（DD, Debian Developer）：Debian 社群的官方成員。DD 擁有對 Debian 官方倉庫上傳的全部許可權。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">Debian Maintainer</emphasis> (DM): a person with limited upload rights to the official Debian package archive.
zh: <emphasis role="strong">Debian 維護者</emphasis>（Debian Maintainer, DM）：擁有對 Debian 官方倉庫部分上傳許可權的人。

note: type: Content of: <book><chapter><section><simpara>
en: Please note that you can’t become an official <emphasis role="strong">Debian Developer</emphasis> (DD) overnight, because it takes more than technical skill. Please do not be discouraged by this. If it is useful to others, you can still upload your package either as a <emphasis role="strong">maintainer</emphasis> through a <emphasis role="strong">sponsor</emphasis> or as a <emphasis role="strong">Debian Maintainer</emphasis>.
zh: 注意，您不可能在一夜之間成為 <emphasis role="strong">Debian 開發者</emphasis>（DD），因為成為 DD 所需要的遠不只是技術技巧。不過別因此而氣餒，如果您的套件對其他人有用，您可以當這個軟體的<emphasis role="strong">套件維護者</emphasis>，然後通過一位<emphasis role="strong">贊助者</emphasis>來上傳這份軟體，或者您可以申請成為 <emphasis role="strong">Debian 維護者</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: Please note that you do not need to create any new packages to become an official Debian Developer. Contributing to the existing packages can provide a path to becoming an official Debian Developer too. There are many packages waiting for good maintainers (see <xref linkend="approaches"/>).
zh: 還有，要成為 Debian 開發者不一定要建立新套件。對已有軟體做出貢獻也是成為 Debian 開發者的理想途徑。眼下正有很多套件等著好的維護者來接手（參見 <xref linkend="approaches"/>）。

note: type: Content of: <book><chapter><section><title>
en: How to contribute
zh: 如何做出貢獻

note: type: Content of: <book><chapter><section><simpara>
en: Please refer to the following to learn how to contribute to Debian:
zh: 請參考下列文件來了解應當如何為 Debian 作出貢獻：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/intro/help">How can you help Debian?</ulink> (official)
zh: <ulink url="https://www.debian.org/intro/help">您如何協助 Debian？</ulink>（官方）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://wiki.debian.org/HelpDebian">Debian Wiki, HelpDebian</ulink> (supplemental)
zh: <ulink url="https://wiki.debian.org/HelpDebian">Debian Wiki, HelpDebian</ulink>（補充內容）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://nm.debian.org/">Debian New Member site</ulink> (official)
zh: <ulink url="https://nm.debian.org/">Debian 新成員站點</ulink>（官方）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://wiki.debian.org/DebianMentorsFaq">Debian Mentors FAQ</ulink> (supplemental)
zh: <ulink url="https://wiki.debian.org/DebianMentorsFaq">Debian Mentors FAQ</ulink>（補充內容）

note: type: Content of: <book><chapter><section><title>
en: Social dynamics of Debian
zh: Debian 的社會驅動力

note: type: Content of: <book><chapter><section><simpara>
en: Please understand Debian’s social dynamics to prepare yourself for interactions with Debian:
zh: 為做好準備和 Debian 進行互動，請理解 Debian 的社會動力學：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: We all are volunteers.
zh: 我們都是志願者。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: You can’t impose on others what to do.
zh: 任何人都不能把事情強加給他人。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: You should be motivated to do things by yourself.
zh: 您應該主動地做自己想做的事情。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Friendly cooperation is the driving force.
zh: 友好的合作是我們前行的動力。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Your contribution should not over-strain others.
zh: 您的貢獻不應致使他人增加負擔。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Your contribution is valuable only when others appreciate it.
zh: 只有當別人欣賞和感激您的貢獻時，它才有真正的價值。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian is not your school where you get automatic attention of teachers.
zh: Debian 並不是一所學校，在這裡沒有所謂的老師會自動地注意到您。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: You should be able to learn many things by yourself.
zh: 您需要有自學大量知識和技能的能力。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Attention from other volunteers is a very scarce resource.
zh: 其他志願者的關注是非常稀缺的資源。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian is constantly improving.
zh: Debian 一直在不斷進步。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: You are expected to make high quality packages.
zh: Debian 期望您製作出高質量的套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: You should adapt yourself to change.
zh: 您應該隨時調整自己來適應變化。

note: type: Content of: <book><chapter><section><simpara>
en: Since we focus only on the technical aspects of the packaging in the rest of this guide, please refer to the following to understand the social dynamics of Debian:
zh: 在這篇指南之後的部分中，我們只關注打包的技術方面。因此，請參考下面的文件來理解 Debian 的社會動力學：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="http://upsilon.cc/~zack/talks/2011/20110321-taipei.pdf">Debian: 17 years of Free Software, “do-ocracy”, and democracy</ulink> (Introductory slides by the ex-DPL)
zh: <ulink url="http://upsilon.cc/~zack/talks/2011/20110321-taipei.pdf">Debian: 17 年的自由軟體、“實幹主義”、和民主</ulink>（前任 DPL 製作的介紹投影片）

note: type: Content of: <book><chapter><section><title>
en: Technical reminders
zh: 技術提醒

note: type: Content of: <book><chapter><section><simpara>
en: Here are some technical reminders to accommodate other maintainers to work on your package easily and effectively to maximize the output of Debian as a whole.
zh: 這裡給出一些技術上的建議，參考行事可以讓您與其他維護者共同維護套件時變得更加輕鬆有效，從而讓 Debian 專案的輸出成果最大化。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Make your package easy to debug.
zh: 讓您的套件容易除錯（debug）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Keep your package simple.
zh: 保持您的套件簡單易懂。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Don’t over-engineer your package.
zh: 不要對套件過度設計。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Keep your package well-documented.
zh: 讓您的套件擁有良好的文件記錄。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Use readable code style.
zh: 使用可讀的程式碼風格。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Make comments in code.
zh: 在程式碼中寫註釋。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Format code consistently.
zh: 格式化程式碼使其風格一致。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara><footnote><simpara>
en: The overwhelming number of Debian maintainers use <emphasis role="strong">git</emphasis> over other VCS systems such as <emphasis role="strong">hg</emphasis>, <emphasis role="strong">bzr</emphasis>, etc.
zh: 絕大多數 Debian 維護者使用 <emphasis role="strong">git</emphasis> 而非其它版本控制系統，如 <emphasis role="strong">hg</emphasis>、<emphasis role="strong">bzr</emphasis> 等等。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Maintain the git repository <placeholder type="footnote" id="0"/> of the package.
zh: 維護套件的 git 倉庫 <placeholder type="footnote" id="0"/>。

note: type: Content of: <book><chapter><section><note><simpara>
en: Debugging of software tends to consume more time than writing the initial working software.
zh: 對軟體進行除錯（debug）通常會比編寫初始可用的軟體花費更多的時間。

note: type: Content of: <book><chapter><section><title>
en: Debian documentation
zh: Debian 文件

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “Debian Policy Manual”
zh: 《Debian 政策手冊》

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “Debian Developer’s Reference”
zh: “Debian 開發者參考”

note: type: Content of: <book><chapter><section><simpara>
en: If this guide contradicts the official Debian documentation, the official Debian documentation is correct. Please file a bug report on the <emphasis role="strong">debmake-doc</emphasis> package using the <emphasis role="strong">reportbug</emphasis> command.
zh: 如果本指南文件的內容與官方的 Debian 文件有所衝突，那麼官方的那些總是對的。請使用 <emphasis role="strong">reportbug</emphasis> 工具對 <emphasis role="strong">debmake-doc</emphasis> 套件報告問題。

note: type: Content of: <book><chapter><section><simpara>
en: Here are alternative tutorial documents, which you may read along with this guide:
zh: 這裡有一些替代性的教材文件，您可以與本指南一起閱讀進行參考：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “Debian New Maintainers' Guide” (older)
zh: “Debian 新維護者手冊”（較舊）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “Debian Packaging Tutorial”
zh: “Debian 打包教材”

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “Ubuntu Packaging Guide” (Ubuntu is Debian based.)
zh: “Ubuntu 打包指南”（Ubuntu 基於 Debian。）

note: type: Content of: <book><chapter><section><title>
en: Help resources
zh: 幫助資源

note: type: Content of: <book><chapter><section><simpara>
en: Before you decide to ask your question in some public place, please do your part of the effort, i.e., read the fine documentation:
zh: 在您決定在某些公共場合問出您的問題之前，請先做好自己能做到的事情，例如，閱讀能找到的文件：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: package information available through the <emphasis role="strong">aptitude</emphasis>, <emphasis role="strong">apt-cache</emphasis>, and <emphasis role="strong">dpkg</emphasis> commands.
zh: 套件的資訊可以使用 <emphasis role="strong">aptitude</emphasis>、<emphasis role="strong">apt-cache</emphasis> 以及 <emphasis role="strong">dpkg</emphasis> 命令進行檢視。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: files in <emphasis role="strong">/usr/share/doc/</emphasis><emphasis>package</emphasis> for all pertinent packages.
zh: 所有相關套件在 <emphasis role="strong">/usr/share/doc/</emphasis><emphasis>套件名</emphasis> 目錄下的檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: contents of <emphasis role="strong">man</emphasis> <emphasis>command</emphasis> for all pertinent commands.
zh: 所有相關命令在 <emphasis role="strong">man</emphasis> <emphasis>命令</emphasis> 下輸出的內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: contents of <emphasis role="strong">info</emphasis> <emphasis>command</emphasis> for all pertinent commands.
zh: 所有相關命令在 <emphasis role="strong">info</emphasis> <emphasis>命令</emphasis> 下輸出的內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: contents of <ulink url="https://lists.debian.org/debian-mentors/">debian-mentors@lists.debian.org mailing list archive</ulink>.
zh: <ulink url="https://lists.debian.org/debian-mentors/">debian-mentors@lists.debian.org 郵件列表存檔</ulink> 的內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: contents of <ulink url="https://lists.debian.org/debian-devel/">debian-devel@lists.debian.org mailing list archive</ulink>.
zh: <ulink url="https://lists.debian.org/debian-devel/">debian-devel@lists.debian.org 郵件列表存檔</ulink> 的內容。

note: type: Content of: <book><chapter><section><simpara>
en: Your desired information can be found effectively by using a well-formed search string such as “keyword <emphasis role="strong">site:lists.debian.org</emphasis>” to limit the search domain of the web search engine.
zh: 要取得您所需要的資訊，一種有效的方法是在網頁搜尋引擎中構建類似“關鍵字 <emphasis role="strong">site:lists.debian.org</emphasis>”這樣具有限制條件的搜尋字串來限定搜尋的域名。

note: type: Content of: <book><chapter><section><simpara>
en: Making a small test package is a good way to learn details of the packaging. Inspecting existing well maintained packages is the best way to learn how other people make packages.
zh: 製作一個小型測試用套件也是瞭解打包細節的一個好辦法。對當前已有的維護良好的套件進行檢查則是瞭解其他人如何製作套件的最好方法。

note: type: Content of: <book><chapter><section><simpara>
en: If you still have questions about the packaging, you can ask them interactively:
zh: 如果您對打包仍然存在疑問，您可以使用以下方式與他人進行溝通：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="mailto:debian-mentors@lists.debian.org">debian-mentors@lists.debian.org</ulink> mailing list. (This mailing list is for the novice.)
zh: <ulink url="mailto:debian-mentors@lists.debian.org">debian-mentors@lists.debian.org</ulink> 郵件列表。（這個郵件列表為專為新手答疑解惑。）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="mailto:debian-devel@lists.debian.org">debian-devel@lists.debian.org</ulink> mailing list. (This mailing list is for the expert.)
zh: <ulink url="mailto:debian-devel@lists.debian.org">debian-devel@lists.debian.org</ulink> 郵件列表。（這個郵件列表針對熟練使用者和高階開發者。）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/support#irc">IRC</ulink> such as #debian-mentors.
zh: <ulink url="https://www.debian.org/support#irc">IRC（網際網路中繼聊天）</ulink> 例如 #debian-mentors。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Teams focusing on a specific set of packages. (Full list at <ulink url="https://wiki.debian.org/Teams">https://wiki.debian.org/Teams</ulink>)
zh: 專注某個特定套件集合的團隊。（完整列表請見 <ulink url="https://wiki.debian.org/Teams">https://wiki.debian.org/Teams</ulink>）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Language-specific mailing lists.
zh: 特定語言的郵件列表。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://lists.debian.org/debian-chinese-gb/">debian-chinese-gb@lists.debian.org</ulink> (This mailing list is for general (Simplified) Chinese discussion.)
zh: <ulink url="https://lists.debian.org/debian-chinese-gb/">debian-chinese-gb@lists.debian.org</ulink>（該郵件列表用於一般的（簡體）中文討論。）

note: type: Content of: <book><chapter><section><simpara>
en: The more experienced Debian developers will gladly help you, if you ask properly after making your required efforts.
zh: 如果您在做好功課後能在這些場合中合適地提出您的疑問的話，那些更有經驗的 Debian 開發者會很願意幫助您。

note: type: Content of: <book><chapter><section><caution><simpara>
en: Debian development is a moving target.  Some information found on the web may be outdated, incorrect, and non-applicable.  Please use it carefully.
zh: Debian 的開發是一個不斷變動的目標。您在網上找到的某些資訊可能是過時的、不正確的或者不適用的，使用時請留意。

note: type: Content of: <book><chapter><section><title>
en: Archive situation
zh: 倉庫狀況

note: type: Content of: <book><chapter><section><simpara>
en: Please realize the situation of the Debian archive.
zh: 請了解 Debian 倉庫的當前狀況。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian already has packages for most kinds of programs.
zh: Debian 已經包含了絕大多數種類程式的套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The number of packages already in the Debian archive is several tens of times greater than that of active maintainers.
zh: Debian 倉庫內套件的數量是活躍維護者的數十倍。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Unfortunately, some packages lack an appropriate level of attention by the maintainer.
zh: 遺憾的是，某些套件缺乏維護者的足夠關注。

note: type: Content of: <book><chapter><section><simpara>
en: Thus, contributions to packages already in the archive are far more appreciated (and more likely to receive sponsorship for uploading) by other maintainers.
zh: 因此，對已經存在於倉庫內的套件做出貢獻是十分歡迎的（這也更有可能得到其他維護者的支援和協助上傳）。

note: type: Content of: <book><chapter><section><tip><simpara>
en: The <emphasis role="strong">wnpp-alert</emphasis> command from the <emphasis role="strong">devscripts</emphasis> package can check for installed packages up for adoption or orphaned.
zh: 來自 <emphasis role="strong">devscripts</emphasis> 套件的 <emphasis role="strong">wnpp-alert</emphasis> 命令可以檢查已安裝軟體中需要接手或已被丟棄的套件。

note: type: Content of: <book><chapter><section><title>
en: Contribution approaches
zh: 貢獻流程

note: type: Content of: <book><chapter><section><simpara>
en: Here is pseudo-Python code for your contribution approaches to Debian with a <emphasis role="strong">program</emphasis>:
zh: 這裡使用類 Python 虛擬碼，給出了對 Debian 貢獻名為 <emphasis role="strong">program</emphasis> 的軟體所走的貢獻流程：

note: type: Content of: <book><chapter><section><simpara>
en: Here:
zh: 其中：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: For exist_in_debian(), and is_team_maintained(); check:
zh: 對 exist_in_debian() 和 is_team_maintained()，需檢查：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: the <emphasis role="strong">aptitude</emphasis> command
zh: <emphasis role="strong">aptitude</emphasis> 命令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/distrib/packages">Debian packages</ulink> web page
zh: <ulink url="https://www.debian.org/distrib/packages">Debian 套件</ulink> 網頁

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://wiki.debian.org/Teams">Teams</ulink>
zh: <ulink url="https://wiki.debian.org/Teams">團隊</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: For is_orphaned(), is_RFA(), and is_ITPed_by_others(); check:
zh: 對 is_orphaned()、is_RFA() 和 is_ITPed_by_others()，需檢查：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The output of the <emphasis role="strong">wnpp-alert</emphasis> command.
zh: <emphasis role="strong">wnpp-alert</emphasis> 命令的輸出。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/devel/wnpp/">Work-Needing and Prospective Packages</ulink>
zh: <ulink url="https://www.debian.org/devel/wnpp/">需要投入精力和未來的套件（WNPP）</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=wnpp;dist=unstable">Debian Bug report logs: Bugs in pseudo-package wnpp in unstable</ulink>
zh: <ulink url="https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=wnpp;dist=unstable">Debian 缺陷報告記錄：在 unstable 版本中 wnpp 偽套件的缺陷記錄</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://wnpp.debian.net/">Debian Packages that Need Lovin'</ulink>
zh: <ulink url="https://wnpp.debian.net/">需要“關愛”的 Debian 套件</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://wnpp-by-tags.debian.net/">Browse wnpp bugs based on debtags</ulink>
zh: <ulink url="https://wnpp-by-tags.debian.net/">基於 debtags 瀏覽 wnpp 缺陷記錄</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: For is_good_program(), check:
zh: 對於 is_good_program()，請檢查：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The program should be useful.
zh: 這個程式應當有用。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The program should not introduce security and maintenance concerns to the Debian system.
zh: 這個程式不應當對 Debian 系統引入安全和維護上的問題。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The program should be well documented and its code needs to be understandable (i.e. not obfuscated).
zh: 這個程式應當有良好的文件，其原始碼需要可被理解（即，未經混淆）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara><footnote><simpara>
en: This is not the absolute requirement.  The hostile upstream may become a major resource drain for us all.  The friendly upstream can be consulted to solve any problems with the program.
zh: 這一條不是絕對的要求，但請注意：遇上不友好的上游可能需要大家為此投入大量精力，而一個友好的上游則能協助解決程式的各類問題。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The program’s authors agree with the packaging and are amicable to Debian. <placeholder type="footnote" id="0"/>
zh: 這個程式的作者同意軟體被打包，且對 Debian 態度友好。<placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: For is_it_DFSG(), and is_its_dependency_DFSG(); check:
zh: 對 is_it_DFSG()，及 is_its_dependency_DFSG()，請檢查：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/social_contract#guidelines">Debian Free Software Guidelines</ulink> (DFSG).
zh: <ulink url="https://www.debian.org/social_contract#guidelines">Debian 自由軟體指導方針</ulink>（DFSG）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: For is_it_distributable(), check:
zh: 對 is_it_distributable()，請檢查：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The software must have a license and it should allow its distribution.
zh: 該軟體必須有一個許可證，其中應當允許軟體被髮行。

note: type: Content of: <book><chapter><section><simpara>
en: You either need to file an <emphasis role="strong">ITP</emphasis> or adopt a package to start working on it.  See the “Debian Developer’s Reference”:
zh: 您或是需要填寫並提交一份 <emphasis role="storng">ITP</emphasis>，或是需要“收養”一個套件並開始為其工作。請見“Debian 開發者參考（Debian Developer's Reference）”文件：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/doc/manuals/developers-reference/pkgs.html#newpackage">5.1. New packages</ulink>.
zh: <ulink url="https://www.debian.org/doc/manuals/developers-reference/pkgs.html#newpackage">5.1. 新套件</ulink>。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/doc/manuals/developers-reference/pkgs.html#archive-manip">5.9. Moving, removing, renaming, orphaning, adopting, and reintroducing packages</ulink>.
zh: <ulink url="https://www.debian.org/doc/manuals/developers-reference/pkgs.html#archive-manip">5.9. 移動、刪除、重新命名、丟棄、接手和重新引入套件</ulink>。

note: type: Content of: <book><chapter><section><title>
en: Novice contributor and maintainer
zh: 新手貢獻者和維護者

note: type: Content of: <book><chapter><section><simpara>
en: The novice contributor and maintainer may wonder what to learn to start your contribution to Debian.  Here are my suggestions depending on your focus:
zh: 新手貢獻者和維護者可能想知道在開始對 Debian 進行貢獻之前需要事先學習哪些知識。根據您個人的側重點不同，下面有我的一些建議供您參考：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Packaging
zh: 打包

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Basics of the <emphasis role="strong">POSIX shell</emphasis> and <emphasis role="strong">make</emphasis>.
zh: <emphasis role="strong">POSIX shell</emphasis> 和 <emphasis role="strong">make</emphasis> 的基本知識。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Some rudimentary knowledge of <emphasis role="strong">Perl</emphasis> and <emphasis role="strong">Python</emphasis>.
zh: 一些 <emphasis role="strong">Perl</emphasis> 和 <emphasis role="strong">Python</emphasis> 的入門知識。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Translation
zh: 翻譯

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Basics of how the PO based translation system works.
zh: 基於 PO 的翻譯系統的工作原理和基本知識。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Documentation
zh: 文件

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Basics of text markups (XML, ReST, Wiki, …).
zh: 文字標記語言的基礎知識（XML、ReST、Wiki 等）。

note: type: Content of: <book><chapter><section><simpara>
en: The novice contributor and maintainer may wonder where to start your contribution to Debian.  Here are my suggestions depending on your skills:
zh: 新手貢獻者和維護者可能想知道從哪裡開始對 Debian 進行貢獻。根據您掌握的技能，下面有我的一些建議供您參考：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">POSIX shell</emphasis>, <emphasis role="strong">Perl</emphasis>, and <emphasis role="strong">Python</emphasis> skills:
zh: <emphasis role="strong">POSIX shell</emphasis>、<emphasis role="strong">Perl</emphasis> 和 <emphasis role="strong">Python</emphasis> 的技巧：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Send patches to the Debian Installer.
zh: 對 Debian 安裝程式提交補丁。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">C</emphasis> and <emphasis role="strong">C++</emphasis> skills:
zh: <emphasis role="strong">C</emphasis> 和 <emphasis role="strong">C++</emphasis> 技能：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Send patches to the packages with the <emphasis role="strong">required</emphasis> and <emphasis role="strong">important</emphasis> priorities.
zh: 對具有 <emphasis role="strong">required</emphasis> 和 <emphasis role="strong">important</emphasis> 優先順序的套件提交補丁。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Non-English skills:
zh: 英語之外的技能：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Send patches to the PO file of the Debian Installer.
zh: 對 Debian 安裝程式專案提交補丁。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Send patches to the PO file of the packages with the <emphasis role="strong">required</emphasis> and <emphasis role="strong">important</emphasis> priorities.
zh: 為具有 <emphasis role="strong">required</emphasis> 和 <emphasis role="strong">important</emphasis> 優先順序的套件中的 PO 檔案提交補丁。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Documentation skills:
zh: 文件技能：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Update contents on <ulink url="https://wiki.debian.org/">Debian Wiki</ulink>.
zh: 更新 <ulink url="https://wiki.debian.org/">Debian 維基（Wiki）</ulink> 中的內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Send patches to the existing <ulink url="https://www.debian.org/doc/">Debian Documentation</ulink>.
zh: 對已有的 <ulink url="https://www.debian.org/doc/">Debian 文件</ulink> 提交補丁。

note: type: Content of: <book><chapter><section><simpara>
en: These activities should give you good exposure to the other Debian people to establish your credibility.
zh: 這些活動應當能讓您在各位 Debian 社群成員之間得到存在感，從而建立您的信譽與名聲。

note: type: Content of: <book><chapter><section><simpara>
en: The novice maintainer should avoid packaging programs with the high security exposure:
zh: 新手維護者應當避免打包具有潛在高度安全隱患的程式：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">setuid</emphasis> or <emphasis role="strong">setgid</emphasis> program
zh: <emphasis role="strong">setuid</emphasis> 或 <emphasis role="strong">setgid</emphasis> 程式

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">daemon</emphasis> program
zh: <emphasis role="strong">背景服務程序（daemon）</emphasis>程式

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: program installed in the <emphasis role="strong">/sbin/</emphasis> or <emphasis role="strong">/usr/sbin/</emphasis> directories
zh: 安裝至 <emphasis role="strong">/sbin/</emphasis> 或 <emphasis role="strong">/usr/sbin/</emphasis> 目錄的程式

note: type: Content of: <book><chapter><section><simpara>
en: When you gain more experience in packaging, you’ll be able to package such programs.
zh: 在積累足夠的打包經驗後，您可以再嘗試打包這樣的程式。

note: type: Content of: <book><chapter><title>
en: Tool Setups
zh: 工具的配置

note: type: Content of: <book><chapter><simpara>
en: The <emphasis role="strong">build-essential</emphasis> package must be installed in the build environment.
zh: <emphasis role="strong">build-essential</emphasis> 套件必須在構建環境內預先安裝。

note: type: Content of: <book><chapter><simpara>
en: The <emphasis role="strong">devscripts</emphasis> package should be installed in the maintainer environment.
zh: <emphasis role="strong">devscripts</emphasis> 套件應當安裝在維護者的工作環境中。

note: type: Content of: <book><chapter><caution><simpara>
en: Tool setups presented here are only meant as an example and may not be up-to-date with the latest packages on the system.  Debian development is a moving target.  Please make sure to read the pertinent documentation and update the configuration as needed.
zh: 這裡展示的工具配置方式僅作為範例提供，可能與系統上最新的套件相比有所落後。Debian 的開發具有一個移動的目標。請確保閱讀合適的文件並按照需要更新配置內容。

note: type: Content of: <book><chapter><section><title>
en: Email address
zh: 電子郵件地址

note: type: Content of: <book><chapter><section><simpara>
en: Various Debian maintenance tools recognize your email address and name to use by the shell environment variables <emphasis role="strong">$DEBEMAIL</emphasis> and <emphasis role="strong">$DEBFULLNAME</emphasis>.
zh: 許多 Debian 維護工具識別並使用 shell 環境變數 <emphasis role="strong">$DEBEMAIL</emphasis> 和 <emphasis role="strong">$DEBFULLNAME</emphasis> 作為作為您的電子郵件地址和名稱。

note: type: Content of: <book><chapter><section><simpara><footnote><simpara>
en: This assumes you are using Bash as your login shell. If you use some other login shell such as Z shell, use their corresponding configuration files instead of <emphasis role="strong">~/.bashrc</emphasis>.
zh: 這裡假設您正在使用 Bash 並以此作為登入預設 shell。如果您設定了其它登入 shell，例如 Z shell，請使用它們對應的配置檔案替換 <emphasis role="lang">~/.bashrc</emphasis> 檔案。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s setup these packages by adding the following lines to <emphasis role="strong">~/.bashrc</emphasis> <placeholder type="footnote" id="0"/>.
zh: 我們可以通過將下面幾行加入 <emphasis role="strong">~/.bashrc</emphasis><placeholder type="footnote" id="0"/> 的方式對這些軟體進行配置。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Add to the <emphasis role="strong">~/.bashrc</emphasis> file
zh: 新增至 <emphasis role="strong">~/.bashrc</emphasis> 檔案

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">mc</emphasis> command offers very easy ways to manage files.  It can open the binary <emphasis role="strong">deb</emphasis> file to check its content by pressing the Enter key over the binary <emphasis role="strong">deb</emphasis> file.  It uses the <emphasis role="strong">dpkg-deb</emphasis> command as its back-end.  Let’s set it up to support easy <emphasis role="strong">chdir</emphasis> as follows.
zh: <emphasis role="strong">mc</emphasis> 命令提供了管理檔案的簡單途徑。它可以開啟二進位制 <emphasis role="strong">deb</emphasis> 檔案，並僅需對二進位制 <emphasis role="strong">deb</emphasis> 檔案按下回車鍵便能檢查其內容。它呼叫了 <emphasis role="strong">dpkg-deb</emphasis> 命令作為其後端。我們可以按照下列方式對其配置，以支援簡易 <emphasis role="strong">chdir</emphasis> 操作。

note: type: Content of: <book><chapter><section><simpara>
en: Nowadays, the <emphasis role="strong">git</emphasis> command is the essential tool to manage the source tree with history.
zh: 如今 <emphasis role="strong">git</emphasis> 命令已成為管理帶歷史的原始碼樹的必要工具。

note: type: Content of: <book><chapter><section><simpara>
en: The global user configuration for the <emphasis role="strong">git</emphasis> command such as your name and email address can be set in <emphasis role="strong">~/.gitconfig</emphasis> as follows.
zh: <emphasis role="strong">git</emphasis> 命令的使用者級全域性配置，如您的名字和電子郵件地址，儲存在 <emphasis role="strong">~/.gitconfig</emphasis> 檔案中，且可以使用如下方式配置。

note: type: Content of: <book><chapter><section><simpara>
en: If you are too accustomed to the CVS or Subversion commands, you may wish to set several command aliases as follows.
zh: 如果您仍然只習慣 CVS 或者 Subversion 的命令風格，您可以使用如下方式設定幾個命令別名。

note: type: Content of: <book><chapter><section><simpara>
en: You can check your global configuration as follows.
zh: 您可以使用如下命令檢查全域性配置。

note: type: Content of: <book><chapter><section><tip><simpara>
en: It is essential to use some GUI git tools like <emphasis role="strong">gitk</emphasis> or <emphasis role="strong">gitg</emphasis> to work effectively with the history of the git repository.
zh: 有必要使用某些圖形介面 git 工具，例如 <emphasis role="strong">gitk</emphasis> 或 <emphasis role="strong">gitg</emphasis> 命令來有效地處理 git 倉庫的歷史。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">quilt</emphasis> command offers a basic method for recording modifications. For the Debian packaging, it should be customized to record modifications in the <emphasis role="strong">debian/patches/</emphasis> directory instead of its default <emphasis role="strong">patches/</emphasis> directory.
zh: <emphasis role="strong">quilt</emphasis> 命令提供了記錄修改的一個基本方式。對 Debian 打包來說，該工具需要進行設定，從而在 <emphasis role="strong">debian/patches/</emphasis> 目錄內記錄修改內容，而非使用預設的 <emphasis role="strong">patches/</emphasis> 目錄。

note: type: Content of: <book><chapter><section><simpara>
en: In order to avoid changing the behavior of the <emphasis role="strong">quilt</emphasis> command itself, let’s create an alias <emphasis role="strong">dquilt</emphasis> for the Debian packaging by adding the following lines to the <emphasis role="strong">~/.bashrc</emphasis> file. The second line provides the same shell completion feature of the <emphasis role="strong">quilt</emphasis> command to the <emphasis role="strong">dquilt</emphasis> command.
zh: 為了避免改變 <emphasis role="strong">quilt</emphasis> 命令自身的行為，我們在這裡建立一個用於 Debian 打包工作的命令別名：<emphasis role="strong">dquilt</emphasis>。之後，我們將對應內容寫入 <emphasis role="strong">~/.bashrc</emphasis> 檔案。下面給出的第二行為 <emphasis role="strong">dquilt</emphasis> 命令提供與 <emphasis role="strong">quilt</emphasis> 命令相同的命令行補全功能。

note: type: Content of: <book><chapter><section><simpara>
en: Then let’s create <emphasis role="strong">~/.quiltrc-dpkg</emphasis> as follows.
zh: 然後我們來建立具有如下內容的 <emphasis role="strong">~/.quiltrc-dpkg</emphasis> 檔案。

note: type: Content of: <book><chapter><section><simpara>
en: See <emphasis role="strong">quilt</emphasis>(1) and <ulink url="file:///usr/share/doc/quilt/quilt.html">How To Survive With Many Patches or Introduction to Quilt</ulink> on how to use the <emphasis role="strong">quilt</emphasis> command.
zh: 請參考 <emphasis role="strong">quilt</emphasis>(1) 和 <ulink url="file:///usr/share/doc/quilt/quilt.html">處理大量補丁的方法暨對 Quilt 的介紹</ulink> 以瞭解如何使用 <emphasis role="strong">quilt</emphasis> 命令。

note: type: Content of: <book><chapter><section><simpara>
en: See <xref linkend="alt-patch"/> for example usages.
zh: 要取得使用範例，請檢視 <xref linkend="alt-patch"/>。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debsign</emphasis> command, included in the <emphasis role="strong">devscripts</emphasis> package, is used to sign the Debian package with your private GPG key.
zh: <emphasis role="strong">debsign</emphasis> 命令由 <emphasis role="strong">devscripts</emphasis> 套件提供，它可以使用使用者的 GPG 私鑰對 Debian 軟體包進行簽名。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debuild</emphasis> command, included in the <emphasis role="strong">devscripts</emphasis> package, builds the binary package and checks it with the <emphasis role="strong">lintian</emphasis> command.  It is useful to have verbose outputs from the <emphasis role="strong">lintian</emphasis> command.
zh: <emphasis role="strong">debuild</emphasis> 命令同樣由 <emphasis role="strong">devscripts</emphasis> 套件提供，它可以構建二進位制套件並使用 <emphasis role="strong">lintian</emphasis> 命令對其進行檢查。<emphasis role="strong">lintian</emphasis> 命令的詳細輸出通常都很實用。

note: type: Content of: <book><chapter><section><simpara>
en: You can set these up in <emphasis role="strong">~/.devscripts</emphasis> as follows.
zh: 您可以將下列內容寫入 <emphasis role="strong">~/.devscripts</emphasis> 檔案來進行配置。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">-i</emphasis> and <emphasis role="strong">-I</emphasis> options in <emphasis role="strong">DEBUILD_DPKG_BUILDPACKAGE_OPTS</emphasis> for the <emphasis role="strong">dpkg-source</emphasis> command help rebuilding of Debian packages without extraneous contents (see <xref linkend="build-noextra"/>).
zh: 用於 <emphasis role="strong">dpkg-source</emphasis> 命令的 <emphasis role="strong">DEBUILD_DPKG_BUILDPACKAGE_OPTS</emphasis> 中可以額外使用 <emphasis role="strong">-i</emphasis> 和 <emphasis role="strong">-I</emphasis> 選項以幫助構建原始碼中具有外來無關內容的套件（參見 <xref linkend="build-noextra"/>）。

note: type: Content of: <book><chapter><section><simpara>
en: Currently, an RSA key with 4096 bits is a good idea.  See <ulink url="https://keyring.debian.org/creating-key.html">Creating a new GPG key</ulink>.
zh: 當前情況下，使用 4096 位的 RSA 金鑰是較好的做法。另見 <ulink url="https://keyring.debian.org/creating-key.html">建立一個新 GPG 金鑰</ulink>。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">lintian</emphasis> package to find bugs in the package.
zh: <emphasis role="strong">lintian</emphasis> 套件能找到所構建套件中的缺陷。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">ccache</emphasis> package to boost the <emphasis role="strong">gcc</emphasis> speed. (optional)
zh: <emphasis role="strong">ccache</emphasis> 套件可以加速 <emphasis role="strong">gcc</emphasis>。（可選）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">libeatmydata1</emphasis> package to boost the <emphasis role="strong">dpkg</emphasis> speed. (optional)
zh: <emphasis role="strong">libeatmydata1</emphasis> 套件可以加速 <emphasis role="strong">dpkg</emphasis>。（可選）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The parallel <emphasis role="strong">make</emphasis> to boost the build speed. (optional)
zh: 並行執行 <emphasis role="strong">make</emphasis> 以提高構建速度。（可選）

note: type: Content of: <book><chapter><section><warning><simpara>
en: The optional customization may cause negative effects.  In case of doubts, disable them.
zh: 可選的設定項可能造成負面影響。如果有疑問，請關閉它們。

note: type: Content of: <book><chapter><section><note><simpara>
en: The parallel <emphasis role="strong">make</emphasis> may fail for some existing packages and may make the build log difficult to read.
zh: 並行的 <emphasis role="strong">make</emphasis> 可能在某些已有套件上執行失敗，它同樣會使得構建日誌難以閱讀。

note: type: Content of: <book><chapter><section><simpara>
en: You may wish to set several global configurations in <emphasis role="strong">~/.gbp.conf</emphasis>
zh: 您也可能需要在 <emphasis role="strong">~/.gbp.conf</emphasis> 中設定全域性配置資訊

note: type: Content of: <book><chapter><section><tip><simpara>
en: The <emphasis role="strong">gbp</emphasis> command is the alias of the <emphasis role="strong">git-buildpackage</emphasis> command.
zh: 這裡的 <emphasis role="strong">gbp</emphasis> 命令是 <emphasis role="strong">git-buildpackage</emphasis> 命令的一個別名。

note: type: Content of: <book><chapter><section><title>
en: HTTP proxy
zh: HTTP 代理

note: type: Content of: <book><chapter><section><simpara>
en: You should set up a local HTTP caching proxy to save the bandwidth for the Debian package repository access.  There are several choices:
zh: 您應當在本地設定 HTTP 快取代理以節約查詢 Debian 軟體倉庫的頻寬。可以考慮以下幾種選項：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Specialized HTTP caching proxy using the <emphasis role="strong">apt-cacher-ng</emphasis> package.
zh: 特化的 HTTP 快取代理，使用 <emphasis role="strong">apt-cacher-ng</emphasis> 套件。

note: type: Content of: <book><chapter><section><title>
en: Private Debian repository
zh: 私有 Debian 倉庫

note: type: Content of: <book><chapter><section><simpara>
en: You can set up a private Debian package repository with the <emphasis role="strong">reprepro</emphasis> package.
zh: 您可以使用 <emphasis role="strong">reprepro</emphasis> 套件搭建私有 Debian 倉庫。

note: type: Content of: <book><chapter><title>
en: Simple Example
zh: 簡單例子

note: type: Content of: <book><chapter><simpara>
en: There is an old Latin saying: “<emphasis role="strong">Longum iter est per praecepta, breve et efficax per exempla</emphasis>” (“It’s a long way by the rules, but short and efficient with examples”).
zh: 有一句古羅馬諺語說得好：“<emphasis role="strong">Longum iter est per praecepta, breve et efficax per exempla</emphasis>”（“<emphasis role="strong">一例勝千言！</emphasis>”）。

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a simple C source using the <emphasis role="strong">Makefile</emphasis> as its build system.
zh: 這裡給出了從簡單的 C 語言原始碼建立簡單的 Debian 套件的例子，並假設上游使用了 <emphasis role="strong">Makefile</emphasis> 作為構建系統。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-0.0.tar.gz</emphasis>.
zh: 我們假設上游原始碼壓縮包（tarball）名稱為 <emphasis role="strong">debhello-0.0.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: This type of source is meant to be installed as a non-system file as:
zh: 這一類原始碼設計可以用這樣的方式安裝成為非系統檔案：

note: type: Content of: <book><chapter><section><simpara>
en: Debian packaging requires changing this “<emphasis role="strong">make install</emphasis>” process to install files to the target system image location instead of the normal location under <emphasis role="strong">/usr/local</emphasis>.
zh: Debian 的打包需要對“<emphasis role="strong">make install</emphasis>”流程進行改變，從而將檔案安裝至目標系統映象所在位置，而非通常使用的 <emphasis role="strong">/usr/local</emphasis> 下的位置。

note: type: Content of: <book><chapter><section><note><simpara>
en: Examples of creating a Debian package from other complicated build systems are described in <xref linkend="more"/>.
zh: 在其它更加複雜的構建系統下構建 Debian 套件的例子可以在 <xref linkend="more"/> 找到。

note: type: Content of: <book><chapter><section><title>
en: Big picture
zh: 大致流程

note: type: Content of: <book><chapter><section><simpara>
en: The big picture for building a single non-native Debian package from the upstream tarball <emphasis role="strong">debhello-0.0.tar.gz</emphasis> can be summarized as:
zh: 從上游原始碼壓縮包 <emphasis role="strong">debhello-0.0.tar.gz</emphasis> 構建單個非原生 Debian 套件的大致流程可以總結如下：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The maintainer obtains the upstream tarball <emphasis role="strong">debhello-0.0.tar.gz</emphasis> and untars its contents to the <emphasis role="strong">debhello-0.0</emphasis> directory.
zh: 維護者取得上游原始碼壓縮包 <emphasis role="strong">debhello-0.0.tar.gz</emphasis> 並將其內容解壓縮至 <emphasis role="strong">debhello-0.0</emphasis> 目錄中。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debmake</emphasis> command debianizes the upstream source tree by adding template files only in the <emphasis role="strong">debian</emphasis> directory.
zh: <emphasis role="strong">debmake</emphasis> 命令對上游原始碼樹進行 debian 化（debianize），具體來說，是建立一個 <emphasis role="strong">debian</emphasis> 目錄並僅向該目錄中新增各類模板檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.0.orig.tar.gz</emphasis> symlink is created pointing to the <emphasis role="strong">debhello-0.0.tar.gz</emphasis> file.
zh: 名為 <emphasis role="strong">debhello_0.0.orig.tar.gz</emphasis> 的符號連結被建立並指向 <emphasis role="strong">debhello-0.0.tar.gz</emphasis> 檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The maintainer customizes template files.
zh: 維護者須自行編輯修改模板檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debuild</emphasis> command builds the binary package from the debianized source tree.
zh: <emphasis role="strong">debuild</emphasis> 命令基於已 debian 化的原始碼樹構建二進位制套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">debhello-0.0-1.debian.tar.xz</emphasis> is created containing the <emphasis role="strong">debian</emphasis> directory.
zh: <emphasis role="strong">debhello-0.0-1.debian.tar.xz</emphasis> 將被建立，它包含了 <emphasis role="strong">debian</emphasis> 目錄。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Big picture of package building
zh: 套件構建的大致流程

note: type: Content of: <book><chapter><section><tip><simpara>
en: If the upstream tarball in the <emphasis role="strong">.tar.xz</emphasis> format is available, use it instead of the one in the <emphasis role="strong">.tar.gz</emphasis> and <emphasis role="strong">.tar.bz2</emphasis> formats. The <emphasis role="strong">xz</emphasis> compression format offers the better compression than the <emphasis role="strong">gzip</emphasis> and <emphasis role="strong">bzip2</emphasis> compressions.
zh: 如果上游原始碼壓縮包提供了 <emphasis role="strong">.tar.xz</emphasis> 格式文件，請使用這樣的壓縮包來替代 <emphasis role="strong">.tar.gz</emphasis> 或 <emphasis role="strong">.tar.bz2</emphasis> 格式。<emphasis role="strong">xz</emphasis> 壓縮與 <emphasis role="strong">gzip</emphasis> 或 <emphasis role="strong">bzip2</emphasis> 壓縮相比提供了更好的壓縮比。

note: type: Content of: <book><chapter><section><title>
en: What is debmake?
zh: 什麼是 debmake？

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command is the helper script for the Debian packaging.
zh: 文中的 <emphasis role="strong">debmake</emphasis> 命令是用於 Debian 打包的一個輔助腳本。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: It always sets most of the obvious option states and values to reasonable defaults.
zh: 它總是將大多數選項的狀態與引數設定為合理的預設值。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: It generates the upstream tarball and its required symlink if they are missing.
zh: 它能產生上游原始碼套件，並按需建立所需的符號連結。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: It doesn’t overwrite the existing configuration files in the <emphasis role="strong">debian/</emphasis> directory.
zh: 它不會覆寫 <emphasis role="strong">debian/</emphasis> 目錄下已存在的配置文件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: It supports the <emphasis role="strong">multiarch</emphasis> package.
zh: 它支援多架構（<emphasis role="strong">multiarch</emphasis>）套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: It creates good template files such as the <emphasis role="strong">debian/copyright</emphasis> file compliant with <emphasis role="strong">DEP-5</emphasis>.
zh: 它能建立良好的模板檔案，例如符合 <emphasis role="strong">DEP-5</emphasis> 的 <emphasis role="strong">debian/copyright</emphasis> 檔案。

note: type: Content of: <book><chapter><section><simpara>
en: These features make Debian packaging with <emphasis role="strong">debmake</emphasis> simple and modern.
zh: 這些特性使得使用 <emphasis role="strong">debmake</emphasis> 進行 Debian 打包工作變得簡單而現代化。

note: type: Content of: <book><chapter><section><title>
en: What is debuild?
zh: 什麼是 debuild？

note: type: Content of: <book><chapter><section><simpara>
en: Here is a summary of commands similar to the <emphasis role="strong">debuild</emphasis> command.
zh: 這裡給出與 <emphasis role="strong">debuild</emphasis> 命令類似的一系列命令的一個彙總。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debian/rules</emphasis> file defines how the Debian binary package is built.
zh: <emphasis role="strong">debian/rules</emphasis> 檔案定義了 Debian 二進位制套件該如何構建。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">dpkg-buildpackage</emphasis> command is the official command to build the Debian binary package.  For normal binary build, it executes roughly:
zh: <emphasis role="strong">dpkg-buildpackge</emphasis> 是構建 Debian 二進位制套件的正式命令。對於正常的二進位制構建，它大體上會執行以下操作：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">dpkg-source --before-build</emphasis>” (apply Debian patches, unless they are already applied)
zh: “<emphasis role="strong">dpkg-source --before-build</emphasis>”（應用 Debian 補丁，除非它們已被應用）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">dpkg-source --build</emphasis>” (build the Debian source package)
zh: “<emphasis role="strong">dpkg-source --build</emphasis>”（構建 Debian 原始碼包）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">dpkg-genbuildinfo</emphasis>” (generate a <emphasis role="strong">*.buildinfo</emphasis> file)
zh: “<emphasis role="strong">dpkg-genbuildinfo</emphasis>”（產生一個 <emphasis role="strong">*.buildinfo</emphasis> 檔案）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">dpkg-genchanges</emphasis>” (generate a <emphasis role="strong">*.changes</emphasis> file)
zh: “<emphasis role="strong">dpkg-genchanges</emphasis>”（產生一個 <emphasis role="strong">*.changes</emphasis> 檔案）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">dpkg-source --after-build</emphasis>” (unapply Debian patches, if they are applied during <emphasis role="strong">--before-build</emphasis>)
zh: “<emphasis role="strong">dpkg-source --after-build</emphasis>”（取消 Debian 補丁，如果它們在 <emphasis role="strong">--before-build</emphasis> 階段已被應用）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">debsign</emphasis>” (sign the <emphasis role="strong">*.dsc</emphasis> and <emphasis role="strong">*.changes</emphasis> files)
zh: “<emphasis role="strong">debsign</emphasis>”（對 <emphasis role="strong">*.dsc</emphasis> 和 <emphasis role="strong">*.changes</emphasis> 檔案進行簽名）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: If you followed <xref linkend="devscripts-setup"/> to set the <emphasis role="strong">-us</emphasis> and <emphasis role="strong">-uc</emphasis> options, this step is skipped and you must run the <emphasis role="strong">debsign</emphasis> command manually.
zh: 如果您按照 <xref linkend="devscripts-setup"/> 的說明設定了 <emphasis role="strong">-us</emphasis> 和 <emphasis role="strong">-us</emphasis> 選項的話，本步驟將會被跳過。您需要手動執行 <emphasis role="strong">debsign</emphasis> 命令。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debuild</emphasis> command is a wrapper script of the <emphasis role="strong">dpkg-buildpackage</emphasis> command to build the Debian binary package under the proper environment variables.
zh: <emphasis role="strong">debuild</emphasis> 命令是 <emphasis role="strong">dpkg-buildpackage</emphasis> 命令的一個封裝指令碼，它可以使用合適的環境變數來構建 Debian 二進位制套件。

note: type: Content of: <book><chapter><section><note><simpara>
en: See <emphasis role="strong">dpkg-buildpackage</emphasis>(1) for exact details.
zh: 如需瞭解詳細內容，請見 <emphasis role="strong">dpkg-buildpackage</emphasis>(1)。

note: type: Content of: <book><chapter><section><title>
en: Step 1: Get the upstream source
zh: 第一步：取得上游原始碼

note: type: Content of: <book><chapter><section><simpara>
en: Let’s get the upstream source.
zh: 我們先要取得上游原始碼。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-0.0.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-0.0.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><simpara>
en: Here, the C source <emphasis role="strong">hello.c</emphasis> is a very simple one.
zh: 這裡的 C 原始碼 <emphasis role="strong">hello.c</emphasis> 非常的簡單。

note: type: Content of: <book><chapter><section><simpara>
en: Here, the <emphasis role="strong">Makefile</emphasis> supports <ulink url="https://www.gnu.org/prep/standards/">GNU Coding Standards</ulink> and <ulink url="https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard">FHS</ulink>. Notably:
zh: 這裡，原始碼中的 <emphasis role="strong">Makefile</emphasis> 支援 <ulink url="https://www.gnu.org/prep/standards/">GNU 編碼標準</ulink> 和 <ulink url="https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard">FHS（檔案系統層級規範）</ulink>。特別地：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: build binaries honoring <emphasis role="strong">$(CPPFLAGS)</emphasis>, <emphasis role="strong">$(CFLAGS)</emphasis>, <emphasis role="strong">$(LDFLAGS)</emphasis>, etc.
zh: 構建二進位制程式時會考慮 <emphasis role="strong">$(CPPFLAGS)</emphasis>、<emphasis role="strong">$(CFLAGS)</emphasis>、<emphasis role="strong">$(LDFLAGS)</emphasis>，等等。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: install files with <emphasis role="strong">$(DESTDIR)</emphasis> defined to the target system image
zh: 安裝檔案時採納 <emphasis role="strong">$(DESTDIR)</emphasis> 作為目標系統鏡像的路徑字首

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: install files with <emphasis role="strong">$(prefix)</emphasis> defined, which can be overridden to be <emphasis role="strong">/usr</emphasis>
zh: 安裝檔案時使用 <emphasis role="strong">$(prefix)</emphasis> 的值，以便我們將其設定覆蓋為 <emphasis role="strong">/usr</emphasis>

note: type: Content of: <book><chapter><section><note><simpara>
en: The <emphasis role="strong">echo</emphasis> of the <emphasis role="strong">$(CFLAGS)</emphasis> variable is used to verify the proper setting of the build flag in the following example.
zh: 對 <emphasis role="strong">$(CFLAGS)</emphasis> 的 <emphasis role="strong">echo</emphasis> 命令用於在接下來的例子中驗證所設定的構建引數。

note: type: Content of: <book><chapter><section><title>
en: Step 2: Generate template files with debmake
zh: 第二步：使用 debmake 產生模板檔案

note: type: Content of: <book><chapter><section><tip><simpara>
en: If the <emphasis role="strong">debmake</emphasis> command is invoked with the <emphasis role="strong">-T</emphasis> option, more verbose comments are generated for the template files.
zh: 如果 <emphasis role="strong">debmake</emphasis> 命令呼叫時使用了 <emphasis role="strong">-T</emphasis> 選項，程式將為模板檔案產生更加詳細的註釋內容。

note: type: Content of: <book><chapter><section><simpara>
en: The output from the <emphasis role="strong">debmake</emphasis> command is very verbose and explains what it does as follows.
zh: <emphasis role="strong">debmake</emphasis> 命令的輸出十分詳細，如下所示，它可以展示程式的具體操作內容。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command generates all these template files based on command line options.  Since no options are specified, the <emphasis role="strong">debmake</emphasis> command chooses reasonable default values for you:
zh: <emphasis role="strong">debmake</emphasis> 命令基於命令列選項產生所有這些模板檔案。如果沒有指定具體選項，<emphasis role="strong">debmake</emphasis> 命令將為您自動選擇合理的預設值：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The source package name: <emphasis role="strong">debhello</emphasis>
zh: 原始碼套件名稱：<emphasis role="strong">debhello</emphasis>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The upstream version: <emphasis role="strong">0.0</emphasis>
zh: 上游版本：<emphasis role="strong">0.0</emphasis>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The binary package name: <emphasis role="strong">debhello</emphasis>
zh: 二進位制套件名稱：<emphasis role="strong">debhello</emphasis>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The Debian revision: <emphasis role="strong">1</emphasis>
zh: Debian 修訂版本：<emphasis role="strong">1</emphasis>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The package type: <emphasis role="strong">bin</emphasis> (the ELF binary executable package)
zh: 套件型別： <emphasis role="strong">bin</emphasis>（ELF 二進位制可執行程式套件）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">-x</emphasis> option: <emphasis role="strong">-x1</emphasis> (default for the single binary package)
zh: <emphasis role="strong">-x</emphasis> 選項：<emphasis role="strong">-x1</emphasis>（是單個二進位制套件的預設值）

note: type: Content of: <book><chapter><section><simpara>
en: Let’s inspect generated template files.
zh: 我們來檢查一下自動產生的模板檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The source tree after the basic <emphasis role="strong">debmake</emphasis> execution.
zh: 基本 <emphasis role="strong">debmake</emphasis> 命令執行後的原始碼樹。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/rules</emphasis> file is the build script provided by the package maintainer.  Here is its template file generated by the <emphasis role="strong">debmake</emphasis> command.
zh: 這裡的 <emphasis role="strong">debian/rules</emphasis> 檔案是應當由套件維護者提供的構建指令碼。此時該檔案是由 <emphasis role="strong">debmake</emphasis> 命令產生的模板檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案）：

note: type: Content of: <book><chapter><section><simpara>
en: This is essentially the standard <emphasis role="strong">debian/rules</emphasis> file with the <emphasis role="strong">dh</emphasis> command. (There are some commented out contents for you to customize it.)
zh: 這便是使用 <emphasis role="strong">dh</emphasis> 命令時標準的 <emphasis role="strong">debian/rules</emphasis> 檔案。（某些內容已被註釋，可供後續修改使用。）

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/control</emphasis> file provides the main meta data for the Debian package.  Here is its template file generated by the <emphasis role="strong">debmake</emphasis> command.
zh: 這裡的 <emphasis role="strong">debian/control</emphasis> 檔案提供了 Debian 套件的主要參數。此時該檔案是由 <emphasis role="strong">debmake</emphasis> 命令產生的模板檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (template file):
zh: <emphasis role="strong">debian/control</emphasis>（模板檔案）：

note: type: Content of: <book><chapter><section><warning><simpara>
en: If you leave “<emphasis role="strong">Section: unknown</emphasis>” in the template <emphasis role="strong">debian/control</emphasis> file unchanged, the <emphasis role="strong">lintian</emphasis> error may cause the build to fail.
zh: 如果您對 <emphasis role="strong">debian/control</emphasis> 模板檔案中的“<emphasis role="strong">Section: unknown</emphasis>”部分不做修改的話，後續的 <emphasis role="strong">lintian</emphasis> 錯誤可能導致構建失敗。

note: type: Content of: <book><chapter><section><simpara>
en: Since this is the ELF binary executable package, the <emphasis role="strong">debmake</emphasis> command sets “<emphasis role="strong">Architecture: any</emphasis>” and “<emphasis role="strong">Multi-Arch: foreign</emphasis>”.  Also, it sets required <emphasis role="strong">substvar</emphasis> parameters as “<emphasis role="strong">Depends: ${shlibs:Depends}, ${misc:Depends}</emphasis>”.  These are explained in <xref linkend="basics"/>.
zh: 因為這是個 ELF 二進位制可執行檔案套件，<emphasis role="strong">debmake</emphasis> 命令設定了“<emphasis role="strong">Architecture: any</emphasis>”和“<emphasis role="strong">Multi-Arch: foreign</emphasis>”兩項。同時，它將所需的 <emphasis role="strong">substvar</emphasis> 引數設定為“<emphasis role="strong">Depends: ${shlibs:Depends}, ${misc:Depends}</emphasis>”。這些內容將在 <xref linkend="basics"/> 部分進行解釋。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/copyright</emphasis> file provides the copyright summary data of the Debian package.  Here is its template file generated by the <emphasis role="strong">debmake</emphasis> command.
zh: 這裡的 <emphasis role="strong">debian/copyright</emphasis> 提供了 Debian 套件版權資料的總結。此時該檔案是由 <emphasis role="strong">debmake</emphasis> 命令產生的模板檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/copyright</emphasis> (template file):
zh: <emphasis role="strong">debian/copyright</emphasis>（模板檔案）：

note: type: Content of: <book><chapter><section><title>
en: Step 3: Modification to the template files
zh: 第三步：編輯模板檔案

note: type: Content of: <book><chapter><section><simpara>
en: Some manual modification is required to make the proper Debian package as a maintainer.
zh: 作為維護者，要製作一個合適的 Debian 套件當然需要對模板內容進行一些手工的調整。

note: type: Content of: <book><chapter><section><simpara>
en: In order to install files as a part of the system files, the <emphasis role="strong">$(prefix)</emphasis> value of <emphasis role="strong">/usr/local</emphasis> in the <emphasis role="strong">Makefile</emphasis> should be overridden to be <emphasis role="strong">/usr</emphasis>.  This can be accommodated by the following the <emphasis role="strong">debian/rules</emphasis> file with the <emphasis role="strong">override_dh_auto_install</emphasis> target setting “<emphasis role="strong">prefix=/usr</emphasis>”.
zh: 為了將安裝檔案變成系統檔案的一部分，<emphasis role="strong">Makefile</emphasis> 檔案中 <emphasis role="strong">$(prefix)</emphasis> 預設的 <emphasis role="strong">/usr/local</emphasis> 的值需要被覆蓋為 <emphasis role="strong">/usr</emphasis>。要做到這點，可以按照下面給出的方法，在 <emphasis role="strong">debian/rules</emphasis> 檔案中新增名為 <emphasis role="strong">override_dh_auto_install</emphasis> 的目標，在其中設置“<emphasis role="strong">prefix=/usr</emphasis>”。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本）：

note: type: Content of: <book><chapter><section><simpara>
en: Exporting the <emphasis role="strong">DH_VERBOSE</emphasis> environment variable in the <emphasis role="strong">debian/rules</emphasis> file as above forces the <emphasis role="strong">debhelper</emphasis> tool to make a fine grained build report.
zh: 如上在 <emphasis role="strong">debian/rules</emphasis> 檔案中匯出=<emphasis role="strong">DH_VERBOSE</emphasis> 環境變數可以強制 <emphasis role="strong">debhelper</emphasis> 工具輸出細粒度的構建報告。

note: type: Content of: <book><chapter><section><simpara><footnote><simpara>
en: This is a cliché to force a read-only relocation link for the hardening and to prevent the lintian warning “<emphasis role="strong">W: debhello: hardening-no-relro usr/bin/hello</emphasis>”.  This is not really needed for this example but should be harmless. The lintian tool seems to produce a false positive warning for this case which has no linked library.
zh: 這裡的做法是為了進行強化而強制啟用只讀重定位連結，以此避免 lintian 的警告“<emphasis role="strong">W: debhello: hardening-no-relro usr/bin/hello</emphasis>”。其實它在本例中並不是必要的，但加上也沒有什麼壞處。對於沒有外部鏈接程式庫的本例來說，lintian 似乎給出了誤報的警告。

note: type: Content of: <book><chapter><section><simpara>
en: Exporting <emphasis role="strong">DEB_BUILD_MAINT_OPTION</emphasis> as above sets the hardening options as described in the “FEATURE AREAS/ENVIRONMENT” in <emphasis role="strong">dpkg-buildflags</emphasis>(1).  <placeholder type="footnote" id="0"/>
zh: 如上匯出 <emphasis role="strong">DEB_BUILD_MAINT_OPTION</emphasis> 變數可以如 <emphasis role="strong">dpkg-buildflags</emphasis>(1) 手冊頁中“FEATURE AREAS/ENVIRONMENT”部分所說，對強化選項進行設定。<placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><simpara>
en: Exporting <emphasis role="strong">DEB_CFLAGS_MAINT_APPEND</emphasis> as above forces the C compiler to emit all the warnings.
zh: 如上匯出 <emphasis role="strong">DEB_CFLAGS_MAINT_APPEND</emphasis> 可以強制 C 編譯器給出所有型別的警告內容。

note: type: Content of: <book><chapter><section><simpara><footnote><simpara>
en: This is a cliché to prevent overlinking for the complex library dependency case such as Gnome programs.  This is not really needed for this simple example but should be harmless.
zh: 這裡的做法是為了避免在依賴程式庫情況複雜的情況下過度連結，例如某些 GNOME 程式。這樣做對這裡的簡單例子來說並不是必要的，但應當是無害的。

note: type: Content of: <book><chapter><section><simpara>
en: Exporting <emphasis role="strong">DEB_LDFLAGS_MAINT_APPEND</emphasis> as above forces the linker to link only when the library is actually needed.  <placeholder type="footnote" id="0"/>
zh: 如上匯出 <emphasis role="strong">DEB_LDFLAGS_MAINT_APPEND</emphasis> 可以強制連結器只對真正需要的程式庫進行連結。<placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">dh_auto_install</emphasis> command for the Makefile based build system essentially runs “<emphasis role="strong">$(MAKE) install DESTDIR=debian/debhello</emphasis>”.  The creation of this <emphasis role="strong">override_dh_auto_install</emphasis> target changes its behavior to “<emphasis role="strong">$(MAKE) install DESTDIR=debian/debhello prefix=/usr</emphasis>”.
zh: 對基於 Makefile 的構建系統來說，<emphasis role="strong">dh_auto_install</emphasis> 命令所做的基本上就是“<emphasis role="strong">$(MAKE) install DESTDIR=debian/debhello</emphasis>”。這裡建立的 <emphasis role="strong">override_dh_auto_install</emphasis> 目標將其行為修改為“<emphasis role="strong">$(MAKE) install DESTDIR=debian/debhello prefix=/usr</emphasis>”。

note: type: Content of: <book><chapter><section><simpara>
en: Here are the maintainer versions of the <emphasis role="strong">debian/control</emphasis> and <emphasis role="strong">debian/copyright</emphasis> files.
zh: 這裡是維護者版本的 <emphasis role="strong">debian/control</emphasis> 和 <emphasis role="strong">debian/copyright</emphasis> 檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (maintainer version):
zh: <emphasis role="strong">debian/control</emphasis>（維護者版本）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/copyright</emphasis> (maintainer version):
zh: <emphasis role="strong">debian/copyright</emphasis>（維護者版本）：

note: type: Content of: <book><chapter><section><simpara>
en: There are several other template files under the <emphasis role="strong">debian/</emphasis> directory.  These also need to be updated.
zh: 在 <emphasis role="strong">debian/</emphasis> 目錄下還有一些其它的模板文件。它們也需要進行更新。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Template files under <emphasis role="strong">debian/</emphasis>. (v=0.0):
zh: <emphasis role="strong">debian/</emphasis>. 下面的模板檔案（0.0 版）：

note: type: Content of: <book><chapter><section><tip><simpara>
en: Configuration files used by the <emphasis role="strong">dh_</emphasis>* commands from the <emphasis role="strong">debhelper</emphasis> package usually treat <emphasis role="strong">#</emphasis> as the start of a comment line.
zh: 對於來自 <emphasis role="strong">debhelper</emphasis> 套件的各個 <emphasis role="strong">dh_</emphasis>* 命令來說，它們在讀取所使用的配置文件時通常把以 # 開頭的行視為註釋行。

note: type: Content of: <book><chapter><section><title>
en: Step 4: Building package with debuild
zh: 第四步：使用 debuild 構建套件

note: type: Content of: <book><chapter><section><simpara>
en: You can create a non-native Debian package using the <emphasis role="strong">debuild</emphasis> command or its equivalents (see <xref linkend="what-debuild"/>) in this source tree.  The command output is very verbose and explains what it does as follows.
zh: 您可以使用 <emphasis role="strong">debuild</emphasis> 或者等效的命令工具（參見 <xref linkend="what-debuild"/>）在這個原始碼樹內構建一個非原生 Debian 套件。命令的輸出通常十分詳細，如下所示，它會對構建中執行的操作進行解釋。

note: type: Content of: <book><chapter><section><simpara>
en: You can verify that <emphasis role="strong">CFLAGS</emphasis> is updated properly with <emphasis role="strong">-Wall</emphasis> and <emphasis role="strong">-pedantic</emphasis> by the <emphasis role="strong">DEB_CFLAGS_MAINT_APPEND</emphasis> variable.
zh: 這裡驗證了 <emphasis role="strong">CFLAGS</emphasis> 已經得到了更新，新增了 <emphasis role="strong">-Wall</emphasis> 和 <emphasis role="strong">-pendatic</emphasis> 引數；這是我們先前在 <emphasis role="strong">DEB_CFLAGS_MAINT_APPEND</emphasis> 變數中所指定的。

note: type: Content of: <book><chapter><section><simpara>
en: The manpage should be added to the package as reported by the <emphasis role="strong">lintian</emphasis> package, as shown in later examples (see <xref linkend="more"/>).  Let’s move on for now.
zh: 根據 <emphasis role="strong">lintian</emphasis> 的報告，您應該如同後文中的例子那樣（請見 <xref linkend="more"/>）為套件新增 man 手冊頁。我們這裡暫且跳過這部分內容。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s inspect the result.
zh: 現在我們來看看成果如何。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated files of <emphasis role="strong">debhello</emphasis> version <emphasis role="strong">0.0</emphasis> by the <emphasis role="strong">debuild</emphasis> command:
zh: <emphasis role="strong">debhello</emphasis> <emphasis role="strong">0.0</emphasis> 版使用 <emphasis role="strong">debuild</emphasis> 命令產生的文件：

note: type: Content of: <book><chapter><section><simpara>
en: You see all the generated files.
zh: 您可以看見生成的全部檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.0.orig.tar.gz</emphasis> is a symlink to the upstream tarball.
zh: <emphasis role="strong">debhello_0.0.orig.tar.gz</emphasis> 是指向上游原始碼壓縮包的符號連結。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.0-1.debian.tar.xz</emphasis> contains the maintainer generated contents.
zh: <emphasis role="strong">debhello_0.0-1.debian.tar.xz</emphasis> 包含了維護者生成的內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.0-1.dsc</emphasis> is the meta data file for the Debian source package.
zh: <emphasis role="strong">debhello_0.0-1.dsc</emphasis> 是 Debian 原始碼套件的元資料檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.0-1_amd64.deb</emphasis> is the Debian binary package.
zh: <emphasis role="strong">debhello_0.0-1_amd64.deb</emphasis> 是 Debian 二進制套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello-dbgsym_0.0-1_amd64.deb</emphasis> is the Debian debug symbol binary package. See <xref linkend="dbgsym"/>.
zh: <emphasis role="strong">debhello-dbgsym_0.0-1_amd64.deb</emphasis> 是 Debian 的除錯符號二進位制套件。另請參見 <xref linkend="dbgsym"/>。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.0-1_amd64.build</emphasis> file is the build log file.
zh: <emphasis role="strong">debhello_0.0-1_amd64.build</emphasis> 是構建日誌文件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.0-1_amd64.buildinfo</emphasis> file is the meta data file generated by <emphasis role="strong">dpkg-genbuildinfo</emphasis>(1).
zh: <emphasis role="strong">debhello_0.0-1_amd64.buildinfo</emphasis> 是 <emphasis role="strong">dpkg-genbuildinfo</emphasis>(1) 生成的元資料檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.0-1_amd64.changes</emphasis> is the meta data file for the Debian binary package.
zh: <emphasis role="strong">debhello_0.0-1_amd64.changes</emphasis> 是 Debian 二進位制套件的元資料檔案。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debhello_0.0-1.debian.tar.xz</emphasis> contains the Debian changes to the upstream source as follows.
zh: <emphasis role="strong">debhello_0.0-1.debian.tar.xz</emphasis> 包含了 Debian 對上游原始碼的修改，具體如下所示。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The compressed archive contents of <emphasis role="strong">debhello_0.0-1.debian.tar.xz</emphasis>:
zh: 壓縮檔案 <emphasis role="strong">debhello_0.0-1.debian.tar.xz</emphasis> 的內容：

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debhello_0.0-1_amd64.deb</emphasis> contains the binary files to be installed to the target system.
zh: <emphasis role="strong">debhello_0.0-1_amd64.deb</emphasis> 包含了將要安裝至目標系統中的檔案。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debhello-debsym_0.0-1_amd64.deb</emphasis> contains the debug symbol files to be installed to the target system..
zh: <emphasis role="strong">debhello-debsym_0.0-1_amd64.deb</emphasis> 包含了將要安裝至目標系統中的除錯符號檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The binary package contents of all binary packages:
zh: 所有二進位制包的包內容：

note: type: Content of: <book><chapter><section><simpara>
en: The generated dependency list of all binary packages.
zh: 生成的依賴列表會給出所有二進位制套件的依賴。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated dependency list of all binary packages (v=0.0):
zh: 生成的所有二進位制套件的依賴列表（v=0.0）：

note: type: Content of: <book><chapter><section><caution><simpara>
en: Many more details need to be addressed before uploading the package to the Debian archive.
zh: 在將套件上傳至 Debian 倉庫之前，仍然有很多細節需要進行處理。

note: type: Content of: <book><chapter><section><note><simpara>
en: If manual adjustments of auto-generated configuration files by the <emphasis role="strong">debmake</emphasis> command are skipped, the generated binary package may lack meaningful package description and some of the policy requirements may be missed.  This sloppy package functions well under the <emphasis role="strong">dpkg</emphasis> command, and may be good enough for your local deployment.
zh: 如果跳過了對 <emphasis role="strong">debmake</emphasis> 命令自動生成的配置檔案的手工調整步驟，所生成的二進位制套件可能缺少有用的套件描述資訊，某些政策的要求也無法滿足。這個不正式的套件對於 <emphasis role="strong">dpkg</emphasis> 命令來說可以正常處理，也許這樣對您本地的部署來說已經足夠好了。

note: type: Content of: <book><chapter><section><title>
en: Step 3 (alternative): Modification to the upstream source
zh: 第三步（備選）：修改上游原始碼

note: type: Content of: <book><chapter><section><simpara>
en: The above example did not touch the upstream source to make the proper Debian package.
zh: 上面的例子中，在建立合適的 Debian 套件時沒有修改上游的原始碼。

note: type: Content of: <book><chapter><section><simpara>
en: An alternative approach as the maintainer is to change the upstream source by modifying the upstream <emphasis role="strong">Makefile</emphasis> to set the $(prefix) value to <emphasis role="strong">/usr</emphasis>.
zh: 作為維護者，另一個備選的方案是對上游原始碼做改動，如修改上游的 <emphasis role="strong">Makefile</emphasis> 以將 $(prefix) 的值設定為 <emphasis role="strong">/usr</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: The packaging is practically the same as the above step-by-step example except for two points in <xref linkend="step-maintainer"/>:
zh: 打包操作基本上和上面的分步範例相同，除了在 <xref linkend="step-maintainer"/> 中的兩點：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Store the maintainer modifications to the upstream source as the corresponding patch files in the <emphasis role="strong">debian/patches/</emphasis> directory and list their filenames in the <emphasis role="strong">debian/patches/series</emphasis> file as indicated in <xref linkend="patches"/>.  There are several ways to generate patch files.  A few examples are given in these sections:
zh: 要將維護者對上游原始碼的修改形成對應的補丁檔案存放在 <emphasis role="strong">debian/patches/</emphasis> 目錄內，並將它們的檔名寫入 <emphasis role="strong">debian/patches/series</emphasis> 檔案，如 <xref linkend="patches"/> 所述。有數種生成補丁檔案的方式。下面的章節中給出了一些例子：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The maintainer modification to the <emphasis role="strong">debian/rules</emphasis> file doesn’t have the <emphasis role="strong">override_dh_auto_install</emphasis> target as follows:
zh: 此時維護者對 <emphasis role="strong">debian/rules</emphasis> 檔案的修改如下所示，它不包含 <emphasis role="strong">override_dh_auto_install</emphasis> 目標：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (alternative maintainer version):
zh: <emphasis role="strong">debian/rules</emphasis>（備選的維護者版本）：

note: type: Content of: <book><chapter><section><simpara>
en: This alternative approach to Debian packaging using a series of patch files may be less robust for future upstream changes but more flexible coping with the difficult upstream source.  (See <xref linkend="deb3"/>.)
zh: 這個使用一系列補丁檔案進行 Debian 打包的備選方案對於應對上游未來的改變可能不夠健壯，但是在應對更為複雜的上游原始碼時可以更靈活。（參見 <xref linkend="deb3"/>。）

note: type: Content of: <book><chapter><section><note><simpara>
en: For this particular packaging case, the above <xref linkend="step-maintainer"/> using the <emphasis role="strong">debian/rules</emphasis> file is the better approach.  But let’s keep on with this approach as a leaning process.
zh: 對當前這個特定的打包場景，前文的 <xref linkend="step-maintainer"/> 中使用 <emphasis role="strong">debian/rules</emphasis> 檔案的方式更好一些。但為了演示起見，此時我們先使用本節的方式繼續操作。

note: type: Content of: <book><chapter><section><tip><simpara>
en: For more complicated packaging cases, both <xref linkend="step-maintainer"/> and <xref linkend="alt-patch"/> approaches need to be deployed.
zh: 對更復雜的打包場景，可能需要同時應用 <xref linkend="step-maintainer"/> 和 <xref linkend="alt-patch"/> 中的方式。

note: type: Content of: <book><chapter><section><section><title>
en: Patch by diff -u
zh: 使用 diff -u 處理補丁

note: type: Content of: <book><chapter><section><section><simpara>
en: Here is an example to create <emphasis role="strong">000-prefix-usr.patch</emphasis> by the <emphasis role="strong">diff</emphasis> command.
zh: 這裡我們使用 <emphasis role="strong">diff</emphasis> 命令建立一個 <emphasis role="strong">000-prefix-usr.patch</emphasis> 檔案作為例子。

note: type: Content of: <book><chapter><section><section><simpara>
en: Please note that the upstream source tree is restored to the original state and the patch file is available as <emphasis role="strong">000-prefix-usr.patch</emphasis>.
zh: 請注意，上游的原始碼樹應當恢復到原始狀態，補丁檔案此時的名字為 <emphasis role="strong">000-prefix-usr.patch</emphasis>。

note: type: Content of: <book><chapter><section><section><simpara>
en: This <emphasis role="strong">000-prefix-usr.patch</emphasis> is edited to be <ulink url="https://dep-team.pages.debian.net/deps/dep3/">DEP-3</ulink> conformant and moved to the right location as below.
zh: 這個 <emphasis role="strong">000-prefix-usr.patch</emphasis> 檔案隨後應當進行編輯以使其符合 <ulink url="https://dep-team.pages.debian.net/deps/dep3/">DEP-3</ulink>，並照如下方式移動至正確的位置。

note: type: Content of: <book><chapter><section><section><title>
en: Patch by dquilt
zh: 使用 dquilt 處理補丁

note: type: Content of: <book><chapter><section><section><simpara>
en: Here is an example to create <emphasis role="strong">000-prefix-usr.patch</emphasis> by the <emphasis role="strong">dquilt</emphasis> command which is a simple wrapper of the <emphasis role="strong">quilt</emphasis> program.  The syntax and function of the <emphasis role="strong">dquilt</emphasis> command is the same as the <emphasis role="strong">quilt</emphasis>(1) command, except for the fact that the patch is stored in the <emphasis role="strong">debian/patches/</emphasis> directory.
zh: 這裡的例子使用 <emphasis role="strong">dquilt</emphasis> 命令（一個 <emphasis role="strong">quilt</emphasis> 程式的簡單封裝）建立 <emphasis role="strong">000-prefix-usr.patch</emphasis>。<emphasis role="strong">dquilt</emphasis> 命令的語法和功能與 <emphasis role="strong">quilt</emphasis>(1) 命令相同，唯一的區別在於補丁儲存在 <emphasis role="strong">debian/patches/</emphasis> 目錄中。

note: type: Content of: <book><chapter><section><section><simpara>
en: Here, <emphasis role="strong">Makefile</emphasis> in the upstream source tree doesn’t need to be restored to the original state. The <emphasis role="strong">dpkg-source</emphasis> command invoked by the Debian packaging procedure in <xref linkend="step-debuild"/>, understands the patch application state recorded by the <emphasis role="strong">dquilt</emphasis> program in the <emphasis role="strong">.pc/</emphasis> directory.  As long as all the changes are committed by the <emphasis role="strong">dquilt</emphasis> command, the Debian source package can be built from the modified source tree.
zh: 這裡，上游原始碼樹中的 <emphasis role="strong">Makefile</emphasis> 檔案沒有恢復到原始狀態的必要。在 <xref linkend="step-debuild"/> 描述的 Debian 打包過程中呼叫的 <emphasis role="strong">dpkg-source</emphasis> 命令能夠理解由 <emphasis role="strong">dquilt</emphasis> 程式在 <emphasis role="strong">.pc/</emphasis> 目錄中記錄的補丁應用情況。只要所有這些修改都是由 <emphasis role="strong">dquilt</emphasis> 命令完成的，那麼 Debian 原始碼套件就可以從經過修改的原始碼樹中進行構建。

note: type: Content of: <book><chapter><section><section><note><simpara>
en: If the <emphasis role="strong">.pc/</emphasis> directory is missing, the <emphasis role="strong">dpkg-source</emphasis> command assumes that no patch was applied.  That’s why the more primitive patch generation methods like in <xref linkend="diff-u"/> without generating the <emphasis role="strong">.pc/</emphasis> directory require the upstream source tree to be restored.
zh: 如果 <emphasis role="strong">.pc/</emphasis> 目錄不存在，<emphasis role="strong">dpkg-source</emphasis> 命令就會假定沒有應用任何補丁。這就是更為原始的補丁生成方法，例如 <xref linkend="diff-u"/> 中未生成 <emphasis role="strong">.pc/</emphasis> 目錄的情況下要求將上游原始碼樹進行恢復的原因。

note: type: Content of: <book><chapter><section><section><title>
en: Patch by dpkg-source --commit
zh: 使用 dpkg-source --commit 處理補丁

note: type: Content of: <book><chapter><section><section><simpara>
en: Here is an example to create <emphasis role="strong">000-prefix-usr.patch</emphasis> by the “<emphasis role="strong">dpkg-source --commit</emphasis>” command.
zh: 這裡給出使用“<emphasis role="strong">dpkg-source --commit</emphasis>”命令生成 <emphasis role="strong">000-prefix-usr.patch</emphasis> 的例子。

note: type: Content of: <book><chapter><section><section><simpara>
en: Let’s edit the upstream source.
zh: 我們先來編輯上游原始碼。

note: type: Content of: <book><chapter><section><section><simpara>
en: Let’s commit it.
zh: 我們來進行提交。

note: type: Content of: <book><chapter><section><section><simpara>
en: Let’s see the result.
zh: 我們來看看效果如何。

note: type: Content of: <book><chapter><section><section><simpara>
en: Here, the <emphasis role="strong">dpkg-source</emphasis> command performs exactly the same as what the sequences of the <emphasis role="strong">dquilt</emphasis> command did in <xref linkend="dquilt"/>.
zh: 這裡，<emphasis role="strong">dpkg-source</emphasis> 命令完成了與 <xref linkend="dquilt"/> 一節中使用 <emphasis role="strong">dquilt</emphasis> 命令完全相同的流程。

note: type: Content of: <book><chapter><title>
en: Basics
zh: 基本內容

note: type: Content of: <book><chapter><simpara>
en: A broad overview is presented here for the basic rules of Debian packaging focusing on the non-native Debian package in the “<emphasis role="strong">3.0 (quilt)</emphasis>” format.
zh: 這裡展示了 Debian 打包工作中針對非原生套件使用“<emphasis role="strong">3.0 (quilt)</emphasis>”格式進行打包所遵循基本規則的一個全域性性概覽。

note: type: Content of: <book><chapter><note><simpara>
en: Some details are intentionally skipped for clarity.  Please read the manpages of the <emphasis role="strong">dpkg-source</emphasis>(1), <emphasis role="strong">dpkg-buildpackage</emphasis>(1), <emphasis role="strong">dpkg</emphasis>(1), <emphasis role="strong">dpkg-deb</emphasis>(1), <emphasis role="strong">deb</emphasis>(5), etc.
zh: 為簡明起見，某些細節被有意跳過。請按需查閱對應命令的手冊頁，例如<emphasis role="strong">dpkg-source</emphasis>(1)、<emphasis role="strong">dpkg-buildpackage</emphasis>(1)、<emphasis role="strong">dpkg</emphasis>(1)、<emphasis role="strong">dpkg-deb</emphasis>(1)、<emphasis role="strong">deb</emphasis>(5)，等等。

note: type: Content of: <book><chapter><simpara>
en: The Debian source package is a set of input files used to build the Debian binary package and is not a single file.
zh: Debian 原始碼套件是一組用於構建 Debian 二進位制套件的輸入檔案，而非單個檔案。

note: type: Content of: <book><chapter><simpara>
en: The Debian binary package is a special archive file which holds a set of installable binary data with its associated information.
zh: Debian 二進位制套件是一個特殊的檔案檔案，其中包含了一系列可安裝的二進位制資料及與它們相關的資訊。

note: type: Content of: <book><chapter><simpara>
en: A single Debian source package may generate multiple Debian binary packages defined in the <emphasis role="strong">debian/control</emphasis> file.
zh: 單個 Debian 原始碼套件可能根據 <emphasis role="strong">debian/control</emphasis> 檔案定義的內容產生多個 Debian 二進位制套件。

note: type: Content of: <book><chapter><simpara>
en: The non-native Debian package in the “<emphasis role="strong">3.0 (quilt)</emphasis>” format is the most normal Debian source package format.
zh: 使用 “<emphasis role="strong">3.0 (quilt)</emphasis>”格式的非原生 Debian 套件是最普通的 Debian 原始碼套件格式。

note: type: Content of: <book><chapter><note><simpara>
en: There are many wrapper scripts.  Use them to streamline your workflow but make sure to understand the basics of their internals.
zh: 有許多封裝指令碼可用。合理使用它們可以幫助您理順工作流程，但是請確保您能理解它們內部的基本工作原理。

note: type: Content of: <book><chapter><section><title>
en: Packaging workflow
zh: 打包工作流

note: type: Content of: <book><chapter><section><simpara>
en: The Debian packaging workflow to create a Debian binary package involves generating several specifically named files (see <xref linkend="name-version"/>) as defined in the “Debian Policy Manual”.
zh: 建立 Debian 二進位制套件的 Debian 打包工作流涉及建立數個特定名稱的檔案（參見 <xref linkend="name-version"/>），與《Debian 政策手冊》的定義保持一致。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: The upstream tarball is downloaded as the <emphasis>package-version</emphasis><emphasis role="strong">.tar.gz</emphasis> file.
zh: 下載上游原始碼壓縮包（tarball）並命名為 <emphasis>package-version</emphasis><emphasis role="strong">.tar.gz</emphasis> 檔案。

note: type: Content of: <book><chapter><section><orderedlist><listitem><simpara>
en: The upstream tarball is untarred to create many files under the <emphasis>package-version</emphasis><emphasis role="strong">/</emphasis> directory.
zh: 使上游提供的原始碼壓縮包解壓縮後的所有檔案儲存在 <emphasis>package-version</emphasis><emphasis role="strong">/</emphasis> 目錄中。

note: type: Content of: <book><chapter><section><orderedlist><listitem><simpara>
en: The upstream tarball is copied (or symlinked) to the particular filename <emphasis>packagename_version</emphasis><emphasis role="strong">.orig.tar.gz</emphasis>.
zh: 上游的原始碼壓縮包被複制（或符號連結）至一個特定的檔名 <emphasis>packagename_version</emphasis><emphasis role="strong">.orig.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: the character separating <emphasis>package</emphasis> and <emphasis>version</emphasis> is changed from <emphasis role="strong">-</emphasis> (hyphen) to <emphasis role="strong">_</emphasis> (underscore)
zh: 分隔 <emphasis>package</emphasis> 和 <emphasis>version</emphasis> 的符號從 <emphasis role="strong">-</emphasis>（連字元）更改為 <emphasis role="strong">_</emphasis>（下劃線）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">.orig</emphasis> is added in the file extension.
zh: 副檔名添加了 <emphasis role="strong">.orig</emphasis> 部分。

note: type: Content of: <book><chapter><section><orderedlist><listitem><simpara>
en: The Debian package specification files are added to the upstream source under the <emphasis>package-version</emphasis><emphasis role="strong">/debian/</emphasis> directory.
zh: Debian 套件規範檔案將被新增至上游原始碼中，存放在 <emphasis>package-version</emphasis><emphasis role="strong">/debian/</emphasis> 目錄下。

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: Required specification files under the <emphasis role="strong">debian/</emphasis> directory:
zh: <emphasis role="strong">debian/</emphasis>* 目錄下的必需技術說明檔案：

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><variablelist><varlistentry><listitem><simpara>
en: The executable script for building the Debian package (see <xref linkend="rules"/>)
zh: 構建 Debian 套件所需的可執行指令碼（參見 <xref linkend="rules"/>）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><variablelist><varlistentry><listitem><simpara>
en: The package configuration file containing the source package name, the source build dependencies, the binary package name, the binary dependencies, etc. (see <xref linkend="control"/>)
zh: 套件配置檔案包含了原始碼套件名稱、原始碼構建依賴、二進位制套件名稱、二進位制套件依賴，等等。（參見 <xref linkend="control"/>）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><variablelist><varlistentry><listitem><simpara>
en: The Debian package history file defining the upstream package version and the Debian revision in its first line (see <xref linkend="changelog"/>)
zh: Debian 套件歷史檔案，其中第一行定義了上游套件版本號和 Debian 修訂版本號（參見 <xref linkend="changelog"/>）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><variablelist><varlistentry><listitem><simpara>
en: The copyright and license summary (see <xref linkend="copyright"/>)
zh: 版權和許可證摘要資訊（參看 <xref linkend="copyright"/>）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: Optional specification files under the <emphasis role="strong">debian/</emphasis>* (see <xref linkend="debianconf"/>):
zh: 在 <emphasis role="strong">debian/</emphasis>* 下的可選配置檔案（參見 <xref linkend="debianconf"/>）：

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debmake</emphasis> command invoked in the <emphasis>package-version/</emphasis> directory provides the initial set of these template configuration files.
zh: 在 <emphasis>package-version/</emphasis> 目錄中呼叫 <emphasis role="strong">debmake</emphasis> 命令將會提供這些配置檔案的一套模板。

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Required specification files are generated even with the <emphasis role="strong">-x0</emphasis> option.
zh: 必備的配置檔案總會生成，無論是否提供 <emphasis role="strong">-x0</emphasis> 選項。

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debmake</emphasis> command does not overwrite any existing configuration files.
zh: <emphasis role="strong">debmake</emphasis> 命令永遠不會覆寫任何已經存在的配置檔案。

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: These files must be manually edited to their perfection according to the “Debian Policy Manual” and “Debian Developer’s Reference”.
zh: 這些檔案必須手工編輯以達到理想狀態。請使用《Debian 政策手冊》和《Debian 開發者參考》作為編輯依據。

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: The current directory is set as: <emphasis role="strong">$(CURDIR)=</emphasis><emphasis>/path/to/package-version/</emphasis>
zh: 當前工作目錄會被設為：<emphasis role="strong">$(CURDIR)=</emphasis><emphasis>/path/to/package-version/</emphasis>

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: Create the Debian source package in the “<emphasis role="strong">3.0 (quilt)</emphasis>” format using <emphasis role="strong">dpkg-source</emphasis>(1)
zh: 使用 <emphasis role="strong">dpkg-source</emphasis>(1) 以“<emphasis role="strong">3.0 (quilt)</emphasis>”格式建立 Debian 原始碼套件

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis>package_version</emphasis>.<emphasis role="strong">orig.tar.gz</emphasis> (copy or symlink of <emphasis>package-version</emphasis>.<emphasis role="strong">tar.gz</emphasis>)
zh: <emphasis>package_version</emphasis>.<emphasis role="strong">orig.tar.gz</emphasis>（<emphasis>package-version</emphasis>.<emphasis role="strong">tar.gz</emphasis> 的副本或符號連結）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis>package_version-revision</emphasis>.<emphasis role="strong">debian.tar.xz</emphasis> (tarball of <emphasis>package-version</emphasis>/<emphasis role="strong">debian/</emphasis>*)
zh: <emphasis>package_version-revision</emphasis>.<emphasis role="strong">debian.tar.xz</emphasis>（<emphasis>package-version</emphasis>/<emphasis role="strong">debian/</emphasis>* 的 tar 壓縮包，即 tarball）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: Build the source using “<emphasis role="strong">debian/rules build</emphasis>” into <emphasis role="strong">$(DESTDIR)</emphasis>
zh: 使用“<emphasis role="strong">debian/rules build</emphasis>”構建原始碼並安裝到 <emphasis role="strong">$(DESTDIR)</emphasis> 中

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">DESTDIR=debian</emphasis>/<emphasis>binarypackage/</emphasis> (single binary package)
zh: <emphasis role="strong">DESTDIR=debian</emphasis>/<emphasis>binarypackage/</emphasis>（單二進位制包）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">DESTDIR=debian/tmp/</emphasis> (multi binary package)
zh: <emphasis role="strong">DESTDIR=debian/tmp/</emphasis>（多個二進位制包）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: Create the Debian binary package using <emphasis role="strong">dpkg-deb</emphasis>(1), <emphasis role="strong">dpkg-genbuildinfo</emphasis>(1), and <emphasis role="strong">dpkg-genchanges</emphasis>(1).
zh: 使用 <emphasis role="strong">dpkg-deb</emphasis>(1)、<emphasis role="strong">dpkg-genbuildinfo</emphasis>(1) 和 <emphasis role="strong">dpkg-genchanges</emphasis>(1) 建立 Debian 二進位制套件。

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: … (There may be multiple Debian binary package files.)
zh: ……（可能有多個 Debian 二進位制包檔案。）

note: type: Content of: <book><chapter><section><orderedlist><listitem><simpara>
en: Check the quality of the Debian package with the <emphasis role="strong">lintian</emphasis> command. (recommended)
zh: 使用 <emphasis role="strong">lintian</emphasis> 命令檢查 Debian 套件的質量。（推薦）

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><simpara>
en: Follow the rejection guidelines from <ulink url="https://ftp-master.debian.org/">ftp-master</ulink>.
zh: 遵守 <ulink url="https://ftp-master.debian.org/">ftp-master</ulink> 的拒絕（rejection）指導方針。

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://ftp-master.debian.org/REJECT-FAQ.html">REJECT-FAQ</ulink>
zh: <ulink url="https://ftp-master.debian.org/REJECT-FAQ.html">套件被拒絕常見問題解答（REJECT-FAQ）</ulink>

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://ftp-master.debian.org/NEW-checklist.html">NEW checklist</ulink>
zh: <ulink url="https://ftp-master.debian.org/NEW-checklist.html">新套件（NEW）檢查清單</ulink>

note: type: Content of: <book><chapter><section><orderedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://ftp-master.debian.org/#lintianrejects">Lintian Autorejects</ulink> (<ulink url="https://ftp-master.debian.org/static/lintian.tags">lintian tag list</ulink>)
zh: <ulink url="https://ftp-master.debian.org/#lintianrejects">Lintian 自動拒絕（autoreject）</ulink>（<ulink url="https://ftp-master.debian.org/static/lintian.tags">lintian 標籤列表</ulink>）

note: type: Content of: <book><chapter><section><simpara>
en: Here, please replace each part of the filename as:
zh: 這裡，請將檔名中對應的部分使用下面的方式進行替換：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: the <emphasis>package</emphasis> part with the Debian source package name
zh: 將 <emphasis>package</emphasis> 部分替換為 Debian 原始碼套件名稱

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: the <emphasis>binarypackage</emphasis> part with the Debian binary package name
zh: 將 <emphasis>binarypackage</emphasis> 部分替換為 Debian 二進位制套件名稱

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: the <emphasis>version</emphasis> part with the upstream version
zh: 將 <emphasis>version</emphasis> 部分替換為上游版本號

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: the <emphasis>revision</emphasis> part with the Debian revision
zh: 將 <emphasis>revision</emphasis> 部分替換為 Debian 修訂號

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: the <emphasis>arch</emphasis> part with the package architecture
zh: 將 <emphasis>arch</emphasis> 部分替換為套件對應架構

note: type: Content of: <book><chapter><section><tip><simpara>
en: Many patch management and VCS usage strategies for the Debian packaging are practiced.  You don’t need to use all of them.
zh: 有很多種通過實踐摸索而得到的補丁管理方法和版本控制系統的使用策略與技巧。您沒有必要將它們全部用上。

note: type: Content of: <book><chapter><section><tip><simpara>
en: There is very extensive documentation in <ulink url="https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html">Chapter 6. Best Packaging Practices</ulink> in the “Debian Developer’s Reference”.  Please read it.
zh: 在“Debian 開發者參考”一文的 <ulink url="https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html">第 6 章 最佳打包實踐</ulink> 部分有十分詳盡的相關文件。請讀一讀這些內容。

note: type: Content of: <book><chapter><section><section><title>
en: The <emphasis role="strong">debhelper</emphasis> package
zh: <emphasis role="strong">debhelper</emphasis> 套件

note: type: Content of: <book><chapter><section><section><simpara>
en: Although a Debian package can be made by writing a <emphasis role="strong">debian/rules</emphasis> script without using the <emphasis role="strong">debhelper</emphasis> package, it is impractical to do so.  There are too many modern “Policy” required features to be addressed, such as application of the proper file permissions, use of the proper architecture dependent library installation path, insertion of the installation hook scripts, generation of the debug symbol package, generation of package dependency information, generation of the package information files, application of the proper timestamp for reproducible build, etc.
zh: 儘管 Debian 套件可以僅由編寫 <emphasis role="strong">debian/rules</emphasis> 指令碼而不使用 <emphasis role="strong">debhelper</emphasis> 套件來生成，其實這樣做是不切實際的。現代的 Debian“政策”對許多功能特性的實現做了要求，如應用適當的檔案許可權、使用合適的與硬體架構相關的軟體庫安裝路徑、安裝觸動指令碼的插入、除錯符號套件的生成、套件依賴資訊的生成、套件資訊檔案的生成、對時間戳調節以符合可重現構建的要求，等等。

note: type: Content of: <book><chapter><section><section><simpara>
en: <emphasis role="strong">Debhelper</emphasis> package provides a set of useful scripts in order to simplify Debian’s packaging workflow and reduce the burden of package maintainers. When properly used, they will help packagers handle and implement “Policy” required features automatically.
zh: <emphasis role="strong">Debhelper</emphasis> 套件提供了一套實用指令碼，用來簡化 Debian 打包工作流並減輕套件維護者的負擔。若能適當運用，它們可以幫助打包者自動地處理並實現 Debian”政策“所要求的功能。

note: type: Content of: <book><chapter><section><section><simpara>
en: The modern Debian packaging workflow can be organized into a simple modular workflow by:
zh: 現代化的 Debian 打包工作流可以組織成一個簡單的模組化工作流，如下所示：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: using the <emphasis role="strong">dh</emphasis> command to invoke many utility scripts automatically from the <emphasis role="strong">debhelper</emphasis> package, and
zh: 使用 <emphasis role="strong">dh</emphasis> 命令以自動呼叫來自 <emphasis role="strong">debhelper</emphasis> 套件的許多實用指令碼，以及

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: configuring their behavior with declarative configuration files in the <emphasis role="strong">debian/</emphasis> directory.
zh: 使用 <emphasis role="strong">debian/</emphasis> 目錄下的宣告式配置檔案配置它們的行為。

note: type: Content of: <book><chapter><section><section><simpara>
en: You should almost always use <emphasis role="strong">debhelper</emphasis> as your package’s build dependency. This document also assumes that you are using a fairly contemporary version of <emphasis role="strong">debhelper</emphasis> to handle packaging works in the following contents.
zh: 您幾乎總是應當將 <emphasis role="strong">debhelper</emphasis> 列為您的軟體包的構建依賴之一。本文件在接下來的內容中也假設您正在使用一個版本足夠新的 <emphasis role="strong">debhelper</emphasis> 協助進行打包工作。

note: type: Content of: <book><chapter><section><title>
en: Package name and version
zh: 套件名稱和版本

note: type: Content of: <book><chapter><section><simpara>
en: If the upstream source comes as <emphasis role="strong">hello-0.9.12.tar.gz</emphasis>, you can take <emphasis role="strong">hello</emphasis> as the upstream source package name and <emphasis role="strong">0.9.12</emphasis> as the upstream version.
zh: 如果所取得上游原始碼的形式為 <emphasis role="strong">hello-0.9.12.tar.gz</emphasis>，您可以將 <emphasis role="strong">hello</emphasis> 作為上游原始碼名稱，並將 <emphasis role="strong">0.9.12</emphasis> 作為上游版本號。

note: type: Content of: <book><appendix><section><simpara>
en: <emphasis role="strong">debmake</emphasis> is meant to provide template files for the package maintainer to work on.  Comment lines started by <emphasis role="strong">#</emphasis> contain the tutorial text.  You must remove or edit such comment lines before uploading to the Debian archive.
zh: <emphasis role="strong">debmake</emphasis> 的目的是為套件維護者提供開始工作的模板檔案。註釋行以 <emphasis role="strong">#</emphasis> 開始，其中包含一些教材文字。您在將套件上傳至 Debian 倉庫之前必須刪除或者修改這樣的註釋行。

note: type: Content of: <book><appendix><section><simpara>
en: The license extraction and assignment process involves a lot of heuristics; it may fail in some cases.  It is highly recommended to use other tools such as <emphasis role="strong">licensecheck</emphasis> from the <emphasis role="strong">devscripts</emphasis> package in conjunction with <emphasis role="strong">debmake</emphasis>.
zh: 許可證資訊的提取和賦值過程應用了大量啟發式操作，因此在某些情況下可能不會正常工作。強烈建議您搭配使用其它工具，例如來自 <emphasis role="strong">devscripts</emphasis> 套件的 <emphasis role="strong">licensecheck</emphasis> 工具，以配合 <emphasis role="strong">debmake</emphasis> 的使用。

note: type: Content of: <book><appendix><section><simpara>
en: There are some limitations for what characters may be used as a part of the Debian package.  The most notable limitation is the prohibition of uppercase letters in the package name.  Here is a summary as a set of regular expressions:
zh: 組成 Debian 套件名稱的字元選取存在一定的限制。最明顯的限制應當是套件名稱中禁止出現大寫字母。這裡給出正則表示式形式的規則總結：

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: Upstream package name (<emphasis role="strong">-p</emphasis>): [-+.a-z0-9]{2,}
zh: 上游套件名稱（<emphasis role="strong">-p</emphasis>）：[-+.a-z0-9]{2,}

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: Binary package name (<emphasis role="strong">-b</emphasis>): [-+.a-z0-9]{2,}
zh: 二進位制套件名稱（<emphasis role="strong">-b</emphasis>）：[-+.a-z0-9]{2,}

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: Upstream version (<emphasis role="strong">-u</emphasis>): [0-9][-+.:~a-z0-9A-Z]*
zh: 上游版本號（<emphasis role="strong">-u</emphasis>）：[0-9][-+.:~a-z0-9A-Z]*

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: Debian revision (<emphasis role="strong">-r</emphasis>): [0-9][+.~a-z0-9A-Z]*
zh: Debian 修訂版本（<emphasis role="strong">-r</emphasis>）： [0-9][+.~a-z0-9A-Z]*

note: type: Content of: <book><appendix><section><simpara>
en: See the exact definition in <ulink url="https://www.debian.org/doc/debian-policy/#document-ch-controlfields">Chapter 5 - Control files and their fields</ulink> in the “Debian Policy Manual”.
zh: 請在《Debian 政策手冊》的 <ulink url="https://www.debian.org/doc/debian-policy/#document-ch-controlfields">第 5 章 - Control 檔案及其欄位</ulink> 一節中檢視其精確定義。

note: type: Content of: <book><appendix><section><simpara>
en: <emphasis role="strong">debmake</emphasis> assumes relatively simple packaging cases.  So all programs related to the interpreter are assumed to be "<emphasis role="strong">Architecture: all</emphasis>".  This is not always true.
zh: <emphasis role="strong">debmake</emphasis> 所假設的打包情景是相對簡單的。因此，所有與直譯器相關的程式都會預設為“<emphasis role="strong">Architecture: all</emphasis>”的情況。當然，這個假設並非總是成立。

note: type: Content of: <book><chapter><section><simpara>
en: You must adjust the package name and upstream version accordingly for the Debian packaging.
zh: 您必須為 Debian 打包工作適當地調整套件名稱和上游版本號。

note: type: Content of: <book><chapter><section><simpara><footnote><simpara>
en: For more than 90% of packages, the package name is equal or less than 24 characters; the upstream version is equal or less than 10 characters and the Debian revision is equal or less than 3 characters.
zh: 對九成以上的套件來說，套件名稱都不會超過 24 個字元；上游版本號通常不超過 10 個字元，而 Debian 修訂版本號也通常不超過 3 個字元。

note: type: Content of: <book><chapter><section><simpara>
en: In order to manage the package name and version information effectively under popular tools such as the <emphasis role="strong">aptitude</emphasis> command, it is a good idea to keep the length of package name to be equal or less than 30 characters; and the total length of version and revision to be equal or less than 14 characters. <placeholder type="footnote" id="0"/>
zh: 為了能有效地使用一些流行的工具（如 <emphasis role="strong">aptitude</emphasis>）管理套件名稱和版本資訊，最好能將套件名稱保持在 30 字元以下；版本號和修訂號加起來最好能不超過 14 個字元。<placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><simpara>
en: In order to avoid name collisions, the user visible binary package name should not be chosen from any generic words.
zh: 為了避免命名衝突，對使用者可見的二進位制套件名稱不應選擇任何常用的單詞。

note: type: Content of: <book><chapter><section><simpara>
en: If upstream does not use a normal versioning scheme such as <emphasis role="strong">2.30.32</emphasis> but uses some kind of date such as <emphasis role="strong">11Apr29</emphasis>, a random codename string, or a VCS hash value as part of the version, make sure to remove them from the upstream version. Such information can be recorded in the <emphasis role="strong">debian/changelog</emphasis> file. If you need to invent a version string, use the <emphasis role="strong">YYYYMMDD</emphasis> format such as <emphasis role="strong">20110429</emphasis> as upstream version. This ensures that the <emphasis role="strong">dpkg</emphasis> command interprets later versions correctly as upgrades. If you need to ensure a smooth transition to a normal version scheme such as <emphasis role="strong">0.1</emphasis> in the future, use the <emphasis role="strong">0~YYMMDD</emphasis> format such as <emphasis role="strong">0~110429</emphasis> as upstream version, instead.
zh: 如果上游沒有使用像 <emphasis role="strong">2.30.32</emphasis> 這樣正常的版本編號方案，而是使用了諸如 <emphasis role="strong">11Apr29</emphasis> 這樣包含日期、某些代號或者一個版本控制系統雜湊值等字串作為版本號的一部分的話，請在上游版本號中將這些部分移除。這些資訊可以稍後在 <emphasis role="strong">debian/changelog</emphasis> 檔案中進行記錄。如果您需要為軟體設計一個版本字符串，可以使用 <emphasis role="strong">YYYYMMDD</emphasis> 格式，如 <emphasis role="strong">20110429</emphasis> 的字串作為上游版本號。這樣能保證 <emphasis role="strong">dpkg</emphasis> 命令在升級時能正確地確定版本的先後關係。如果您想要確保萬一上游在未來重新採納正常版本編號方案，例如 <emphasis role="strong">0.1</emphasis> 時能夠做到順暢地遷移，可以另行使用 <emphasis role="strong">0~YYMMDD</emphasis> 的格式，如 <emphasis role="strong">0~110429</emphasis> 作為上游版本號。

note: type: Content of: <book><chapter><section><simpara>
en: Version strings can be compared using the <emphasis role="strong">dpkg</emphasis> command as follows.
zh: 版本字串可以按如下的方式使用 <emphasis role="strong">dpkg</emphasis> 命令進行比較。

note: type: Content of: <book><chapter><section><simpara>
en: The version comparison rule can be summarized as:
zh: 版本比較的規則可以歸納如下：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Strings are compared from the head to the tail.
zh: 字串按照起始到末尾的順序進行比較。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Letters are larger than digits.
zh: 字元比數字大。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Numbers are compared as integers.
zh: 數字按照整數順序進行比較。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Letters are compared in ASCII code order.
zh: 字元按照 ASCII 編碼的順序進行比較。

note: type: Content of: <book><chapter><section><simpara>
en: There are special rules for period (<emphasis role="strong">.</emphasis>), plus (<emphasis role="strong">+</emphasis>), and tilde (<emphasis role="strong">~</emphasis>) characters, as follows.
zh: 對於某些字元，如句點（<emphasis role="strong">.</emphasis>）、加號（<emphasis role="strong">+</emphasis>）和波浪號（<emphasis role="strong">~</emphasis>），有如下的特殊規則。

note: type: Content of: <book><chapter><section><simpara>
en: One tricky case occurs when the upstream releases <emphasis role="strong">hello-0.9.12-ReleaseCandidate-99.tar.gz</emphasis> as the pre-release of <emphasis role="strong">hello-0.9.12.tar.gz</emphasis>. You can ensure the Debian package upgrade to work properly by renaming the upstream source to <emphasis role="strong">hello-0.9.12~rc99.tar.gz</emphasis>.
zh: 有一個稍需注意的情況，即當上游將 <emphasis role="strong">hello-0.9.12-ReleaseCandidate-99.tar.gz</emphasis> 這樣的版本當作預釋出版本，而將 <emphasis role="strong">hello-0.9.12.tar.gz</emphasis> 作為正式版本時。為了確保 Debian 套件升級能夠順暢進行，您應當修改版本號命名，如將上游原始碼壓縮包重新命名為 <emphasis role="strong">hello-0.9.12~rc99.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><title>
en: Native Debian package
zh: 原生 Debian 套件

note: type: Content of: <book><chapter><section><simpara>
en: The non-native Debian package in the “<emphasis role="strong">3.0 (quilt)</emphasis>” format is the most normal Debian source package format.  The <emphasis role="strong">debian/source/format</emphasis> file should have “<emphasis role="strong">3.0 (quilt)</emphasis>” in it as described in <emphasis role="strong">dpkg-source</emphasis>(1).  The above workflow and the following packaging examples always use this format.
zh: 使用“<emphasis role="strong">3.0 (quilt)</emphasis>”格式的非原生 Debian 套件是最常見最標準的 Debian 原始碼套件格式。根據 <emphasis role="strong">dpkg-source</emphasis>(1) 的描述，此時的 <emphasis role="strong">debian/source/format</emphasis> 檔案應當包含“<emphasis role="strong">3.0 (quilt)</emphasis> 的文字內容。上述的工作流和接下來給出的打包範例都使用了這種格式。

note: type: Content of: <book><chapter><section><simpara>
en: A native Debian package is the rare Debian binary package format.  It may be used only when the package is useful and valuable only for Debian.  Thus, its use is generally discouraged.
zh: 而原生 Debian 套件是較罕見的一種 Debian 套件格式。它通常只用於打包僅對 Debian 專案有價值、有意義的軟體。因此，該格式的使用通常不被提倡。

note: type: Content of: <book><chapter><section><caution><simpara>
en: A native Debian package is often accidentally built when its upstream tarball is not accessible from the <emphasis role="strong">dpkg-buildpackage</emphasis> command with its correct name <emphasis>package_version</emphasis>.<emphasis role="strong">orig.tar.gz</emphasis> .  This is a typical newbie mistake caused by making a symlink name with “<emphasis role="strong">-</emphasis>” instead of the correct one with “<emphasis role="strong">_</emphasis>”.
zh: 在上游 tarball 原始碼壓縮包無法使用其正確名稱 <emphasis>package_version</emphasis>.<emphasis role="strong">orig.tar.gz</emphasis> 被 <emphasis role="strong">dpkg-buildpackage</emphasis> 取得到的時候，會出現意外地構建了原生 Debian 套件的情況。這是新手常見的一個錯誤，通常是因構建中錯誤地在符號連結名稱中使用了“<emphasis role="strong">-</emphasis>”字元而非正確的“<emphasis role="strong">_</emphasis>”字元。[譯註：此處仍然假設打包的場景是已經取得或形成了名為 <emphasis role="strong">package-version</emphasis>.<emphasis role="strong">tar.gz</emphasis> 的上游原始碼 tarball。Debian 的打包工作很大程度上是以上游原始碼 tarball 作為基礎的，這一點須時刻牢記在心。]

note: type: Content of: <book><chapter><section><simpara>
en: A native Debian package has no separation between the <emphasis role="strong">upstream code</emphasis> and the <emphasis role="strong">Debian changes</emphasis> and consists only of the following:
zh: 原生 Debian 套件不對 <emphasis role="strong">上游程式碼</emphasis> 和 <emphasis role="strong">Debian 的修改</emphasis> 進行區分，僅包含以下內容：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis>package_version</emphasis>.<emphasis role="strong">tar.gz</emphasis> (copy or symlink of <emphasis>package-version</emphasis>.<emphasis role="strong">tar.gz</emphasis> with <emphasis role="strong">debian/</emphasis>* files.)
zh: <emphasis>package_version</emphasis>.<emphasis role="strong">tar.gz</emphasis>（<emphasis>package-version</emphasis>.<emphasis role="strong">tar.gz</emphasis> 檔案的副本或符號連結，包含 <emphasis role="strong">debian/</emphasis>* 的各個檔案。）

note: type: Content of: <book><chapter><section><simpara>
en: If you need to create a native Debian package, create it in the “<emphasis role="strong">3.0 (native)</emphasis>” format using <emphasis role="strong">dpkg-source</emphasis>(1).
zh: 如果您需要手動建立原生 Debian 套件，可以使用 <emphasis role="strong">dpkg-source</emphasis>(1) 工具以“<emphasis role="strong">3.0 (native)</emphasis>”格式進行建立。

note: type: Content of: <book><chapter><section><tip><simpara>
en: There is no need to create the tarball in advance if the native package format is used.  The native Debian package can be created by setting the <emphasis role="strong">debian/source/format</emphasis> file to “<emphasis role="strong">3.0 (native)</emphasis>”, setting the <emphasis role="strong">debian/changelog</emphasis> file to have the version without the Debian revision (<emphasis role="strong">1.0</emphasis> instead of <emphasis role="strong">1.0-1</emphasis>), and invoking the “<emphasis role="strong">dpkg-source -b .</emphasis>” command within the source tree.  The tarball containing the source is generated by this.
zh: 如果使用原生套件格式，沒有必要事先建立 tarball 壓縮包。要建立一個原生 Debian 套件，應當將 <emphasis role="strong">debian/source/format</emphasis> 檔案的內容設定為“<emphasis role="strong">3.0 (native)</emphasis>”，適當編寫 <emphasis role="strong">debian/changelog</emphasis> 文件使得版本號中不包含 Debian 修訂號（例如，<emphasis role="strong">1.0</emphasis> 而非 <emphasis role="strong">1.0-1</emphasis>），最後在原始碼樹中調用“<emphasis role="strong">dpkg-source -b .</emphasis>”命令。這樣做便可以自動生成包含原始碼的 tarball。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/rules</emphasis> script is the executable script to build the Debian package.
zh: <emphasis role="strong">debian/rules</emphasis> 指令碼是用於實際構建 Debian 套件的可執行指令碼。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debian/rules</emphasis> script re-targets the upstream build system (see <xref linkend="build"/>) to install files in the <emphasis role="strong">$(DESTDIR)</emphasis> and creates the archive file of the generated files as the <emphasis role="strong">deb</emphasis> file.
zh: <emphasis role="strong">debian/rules</emphasis> 指令碼重新封裝了上游的構建系統（參見 <xref linkend="build"/>）以達到將檔案安裝至 <emphasis role="strong">$(DESTDIR)</emphasis>並將生成的檔案存入各個 <emphasis role="strong">deb</emphasis> 格式檔案中的目的。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">deb</emphasis> file is used for the binary distribution and installed to the system using the <emphasis role="strong">dpkg</emphasis> command.
zh: 這裡的 <emphasis role="strong">deb</emphasis> 檔案用於二進位制的檔案分發，並將被 <emphasis role="strong">dpkg</emphasis> 命令所使用以將軟體安裝至系統中。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">dh</emphasis> command is normally used as the front-end to the build system inside the <emphasis role="strong">debian/rules</emphasis> script.
zh: <emphasis role="strong">dh</emphasis> 命令通常在 <emphasis role="strong">debian/rules</emphasis> 指令碼中使用，用作構建系統的一個前端。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">$(DESTDIR)</emphasis> path depends on the build type.
zh: <emphasis role="strong">$(DESTDIR)</emphasis> 路徑具體值依賴於構建的型別。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">$(DESTDIR)=debian/</emphasis><emphasis>binarypackage</emphasis> (single binary package)
zh: <emphasis role="strong">$(DESTDIR)=debian/</emphasis><emphasis>binarypackage</emphasis>（單個二進位制套件）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">$(DESTDIR)=debian/tmp</emphasis> (multiple binary package)
zh: <emphasis role="strong">$(DESTDIR)=debian/tmp</emphasis>（多個二進位制套件）

note: type: Content of: <book><chapter><section><section><simpara>
en: The <emphasis role="strong">dh</emphasis> command from the <emphasis role="strong">debhelper</emphasis> package with help from its associated packages functions as the wrapper to the typical upstream build systems and offers us uniform access to them by supporting all the Debian policy stipulated targets of the <emphasis role="strong">debian/rules</emphasis> file.
zh: 由 <emphasis role="strong">debhelper</emphasis> 套件提供的 <emphasis role="strong">dh</emphasis> 命令與一些相關的套件共同工作，作為典型的上游構建系統的一層封裝，同時它支援所有 Debian 政策（Debian Policy）規定必須在 <emphasis role="strong">debian/rules</emphasis> 實現的目標（target），以此提供一個統一的查詢介面。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh clean</emphasis> : clean files in the source tree.
zh: <emphasis role="strong">dh clean</emphasis>：清理原始碼樹中的檔案。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh build</emphasis> : build the source tree
zh: <emphasis role="strong">dh build</emphasis>：在原始碼樹中進行構建

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh build-arch</emphasis> : build the source tree for architecture dependent packages
zh: <emphasis role="strong">dh build-arch</emphasis>：在原始碼樹中構建架構相關的套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh build-indep</emphasis> : build the source tree for architecture independent packages
zh: <emphasis role="strong">dh build-indep</emphasis>：在原始碼中構建架構無關的套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh install</emphasis> : install the binary files to <emphasis role="strong">$(DESTDIR)</emphasis>
zh: <emphasis role="strong">dh install</emphasis>：將二進位制檔案安裝至 <emphasis role="strong">$(DESTDIR)</emphasis>

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh install-arch</emphasis> : install the binary files to <emphasis role="strong">$(DESTDIR)</emphasis> for architecture dependent packages
zh: <emphasis role="strong">dh install-arch</emphasis>：為架構相關的套件將二進位制檔案安裝至 <emphasis role="strong">$(DESTDIR)</emphasis> 中

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh install-indep</emphasis> : install the binary files to <emphasis role="strong">$(DESTDIR)</emphasis> for architecture independent packages
zh: <emphasis role="strong">dh install-indep</emphasis>：為架構無關的套件將二進位制檔案安裝進入 <emphasis role="strong">$(DESTDIR)</emphasis> 中

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh binary</emphasis> : generate the <emphasis role="strong">deb</emphasis> file
zh: <emphasis role="strong">dh binary</emphasis>：產生 <emphasis role="strong">deb</emphasis> 檔案

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh binary-arch</emphasis> : generate the <emphasis role="strong">deb</emphasis> file for architecture dependent packages
zh: <emphasis role="strong">dh binary-arch</emphasis>：為架構相關的套件產生 <emphasis role="strong">deb</emphasis> 檔案

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dh binary-indep</emphasis> : generate the <emphasis role="strong">deb</emphasis> file for architecture independent packages
zh: <emphasis role="strong">dh binary-indep</emphasis>：為架構無關的套件產生 <emphasis role="strong">deb</emphasis> 檔案

note: type: Content of: <book><chapter><section><section><note><simpara>
en: For <emphasis role="strong">debhelper</emphasis> “compat &gt;= 9”, the <emphasis role="strong">dh</emphasis> command exports compiler flags (<emphasis role="strong">CFLAGS</emphasis>, <emphasis role="strong">CXXFLAGS</emphasis>, <emphasis role="strong">FFLAGS</emphasis>, <emphasis role="strong">CPPFLAGS</emphasis> and <emphasis role="strong">LDFLAGS</emphasis>) with values as returned by <emphasis role="strong">dpkg-buildflags</emphasis> if they are not set previously.  (The <emphasis role="strong">dh</emphasis> command calls <emphasis role="strong">set_buildflags</emphasis> defined in the <emphasis role="strong">Debian::Debhelper::Dh_Lib</emphasis> module.)
zh: 對使用了 <emphasis role="strong">debhelper</emphasis>“compat &gt;=9”的情況，<emphasis role="strong">dh</emphasis> 命令將在編譯引數未事先設定的情況下根據 <emphasis role="strong">dpkg-buildflags</emphasis> 命令返回的值設定並匯出各個編譯引數（如 <emphasis role="strong">CFLAGS</emphasis>、<emphasis role="strong">CXXFLAGS</emphasis>、<emphasis role="strong">FFLAGS</emphasis>、<emphasis role="strong">CPPFLAGS</emphasis> 和 <emphasis role="strong">LDFLAGS</emphasis>）。（<emphasis role="strong">dh</emphasis> 命令將呼叫在 <emphasis role="strong">Debian::Debhelper::Dh_Lib</emphasis> 模組中定義的 <emphasis role="strong">set_buildflags</emphasis>。）

note: type: Content of: <book><chapter><section><section><title>
en: Simple debian/rules
zh: 簡單的 debian/rules

note: type: Content of: <book><chapter><section><section><simpara><footnote><simpara>
en: The <emphasis role="strong">debmake</emphasis> command generates a bit more complicated <emphasis role="strong">debian/rules</emphasis> file.  But this is the core part.
zh: <emphasis role="strong">debmake</emphasis> 命令會產生稍微複雜一些的 <emphasis role="strong">debian/rules</emphasis> 檔案。雖然如此，其核心結構沒有什麼變化。

note: type: Content of: <book><chapter><section><section><simpara>
en: Thanks to this abstraction of the <emphasis role="strong">dh</emphasis> command <placeholder type="footnote" id="0"/>, the Debian policy compliant <emphasis role="strong">debian/rules</emphasis> file supporting all the required targets can be written as simple as <placeholder type="footnote" id="1"/>:
zh: 受益於 <emphasis role="strong">dh</emphasis> 命令對構建目標的抽象化 <placeholder type="footnote" id="0"/>，一個符合 Debian 政策而支援所有必需目標（target）的 <emphasis role="strong">debian/rules</emphasis> 檔案可以簡單地寫成如下形式<placeholder type="footnote" id="1"/>：

note: type: Content of: <book><chapter><section><section><formalpara><title>
en: Simple <emphasis role="strong">debian/rules</emphasis>:
zh: 簡單的 <emphasis role="strong">debian/rules</emphasis>：

note: type: Content of: <book><chapter><section><section><simpara>
en: Essentially, this <emphasis role="strong">dh</emphasis> command functions as the sequencer to call all required <emphasis role="strong">dh_</emphasis>* commands at the right moment.
zh: 從本質上來看，這裡的 <emphasis role="strong">dh</emphasis> 命令的作用是作為一個序列化工具，在合適的時候呼叫所有所需的 <emphasis role="strong">dh_</emphasis>* 命令。

note: type: Content of: <book><chapter><section><section><tip><simpara>
en: Setting “<emphasis role="strong">export DH_VERBOSE = 1</emphasis>” outputs every command that modifies files on the build system.  Also it enables verbose build logs for some build systems.
zh: 設定“<emphasis role="strong">export DH_VERBOSE = 1</emphasis>”會輸出構建系統中每一條會修改檔案內容的命令。它同時會在某些構建系統中啟用詳細輸出構建日誌的選項。

note: type: Content of: <book><chapter><section><section><title>
en: Customized debian/rules
zh: 設定 debian/rules

note: type: Content of: <book><chapter><section><section><simpara>
en: Flexible customization of the <emphasis role="strong">debian/rules</emphasis> script is realized by adding appropriate <emphasis role="strong">override_dh_</emphasis>* targets and their rules.
zh: 通過新增合適的 <emphasis role="strong">override_dh_</emphasis>* 目標（target）並編寫對應的規則，可以實現對 <emphasis role="strong">debian/rules</emphasis> 指令碼的靈活定製。

note: type: Content of: <book><chapter><section><section><simpara>
en: Whenever some special operation is required for a certain <emphasis role="strong">dh_</emphasis><emphasis>foo</emphasis> command invoked by the <emphasis role="strong">dh</emphasis> command, any automatic execution of it can be overridden by adding the makefile target <emphasis role="strong">override_dh_</emphasis><emphasis>foo</emphasis> in the <emphasis role="strong">debian/rules</emphasis> file.
zh: 如果需要在 <emphasis role="strong">dh</emphasis> 命令呼叫某些特定的 <emphasis role="strong">dh_</emphasis><emphasis>foo</emphasis> 命令時採取某些特別的操作，則任何自動執行的操作均可以被 <emphasis role="strong">debian/rules</emphasis> 中額外新增的 <emphasis role="strong">override_dh_</emphasis><emphasis>foo</emphasis> 這樣的 Makefile 目標所覆寫。

note: type: Content of: <book><chapter><section><section><simpara>
en: The build process may be customized via the upstream provided interface such as arguments to the standard source build system commands, such as:
zh: 構建的過程可以使用某些上游提供的介面進行定製化，如使用傳遞給標準的原始碼構建系統的引數。這些構建系統包括但不限於：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">configure</emphasis>,
zh: <emphasis role="strong">configure</emphasis>，

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">Makefile</emphasis>,
zh: <emphasis role="strong">Makefile</emphasis>，

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">setup.py</emphasis>, or
zh: <emphasis role="strong">setup.py</emphasis>，或

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">Build.PL</emphasis>.
zh: <emphasis role="strong">Build.PL</emphasis>。

note: type: Content of: <book><chapter><section><section><simpara>
en: If this is the case, you should add the <emphasis role="strong">override_dh_auto_build</emphasis> target and executing the “<emphasis role="strong">dh_auto_build --</emphasis> <emphasis>arguments”</emphasis> command.  This ensures passing <emphasis>arguments</emphasis> to the such build system after the default parameters that <emphasis role="strong">dh_auto_build</emphasis> usually passes.
zh: 在這種情況下，您應該新增一個 <emphasis role="strong">override_dh_auto_build</emphasis> 目標並在其中執行“<emphasis role="strong">dh_auto_build --</emphasis> <emphasis>設定引數”</emphasis> 的命令。這樣可以在 <emphasis role="strong">dh_auto_build</emphasis> 預設傳遞的引數之後確保將使用者給出的 <emphasis>設定引數</emphasis> 繼續傳遞給那些構建系統。

note: type: Content of: <book><chapter><section><section><tip><simpara>
en: Please try not to execute the above build system commands directly if they are supported by the <emphasis role="strong">dh_auto_build</emphasis> command.
zh: 如果上文提到的構建系統命令已知得到了 <emphasis role="strong">dh_auto_build</emphasis> 命令的支援的話，請避免直接呼叫這些命令（而讓 <emphasis role="strong">dh_auto_build</emphasis> 自動處理）。

note: type: Content of: <book><chapter><section><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command creates the initial template file taking advantage of the above simple <emphasis role="strong">debian/rules</emphasis> file example while adding some extra customizations for package hardening, etc. You need to know how underlying build systems work under the hood (see <xref linkend="build"/>) to address their irregularities using package customization.
zh: <emphasis role="strong">debmake</emphasis> 命令所建立的初始模版檔案除了應用了上文提到的簡單 <emphasis role="strong">debian/rules</emphasis> 檔案的優點外，同時為後續可能涉及的套件強化等情景添加了一些額外的定製選項。您需要先了解整個構建系統背後的工作原理（參見 <xref linkend="build"/>），之後才能收放自如地定製套件來處理某些非常規的工作情況。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: See <xref linkend="step-maintainer"/> for basic customization of the template <emphasis role="strong">debian/rules</emphasis> file generated by the <emphasis role="strong">debmake</emphasis> command.
zh: 請參考 <xref linkend="step-maintainer"/> 一節以瞭解如何對 <emphasis role="strong">debmake</emphasis> 命令生成的 <emphasis role="strong">debian/rules</emphasis> 檔案模版進行定製。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: See <xref linkend="multiarch"/> for multiarch customization.
zh: 請參見 <xref linkend="multiarch"/> 以瞭解與 multiarch 相關的定製方法。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: See <xref linkend="harden"/> for hardening customization.
zh: 請參見 <xref linkend="harden"/> 以瞭解與套件強化相關的定製方法。

note: type: Content of: <book><chapter><section><section><title>
en: Variables for debian/rules
zh: debian/rules 中的變數

note: type: Content of: <book><chapter><section><section><simpara>
en: Some variable definitions useful for customizing <emphasis role="strong">debian/rules</emphasis> can be found in files under <emphasis role="strong">/usr/share/dpkg/</emphasis>.  Notably:
zh: 某些對設定 <emphasis role="strong">debian/rules</emphasis> 有用的變數定義可以在 <emphasis role="strong">/usr/share/dpkg/</emphasis> 目錄下的檔案中找到。比較重要的包括：

note: type: Content of: <book><chapter><section><section><variablelist><varlistentry><listitem><simpara>
en: <emphasis role="strong">DEB_SOURCE</emphasis>, <emphasis role="strong">DEB_VERSION</emphasis>, <emphasis role="strong">DEB_VERSION_EPOCH_UPSTREAM</emphasis>, <emphasis role="strong">DEB_VERSION_UPSTREAM_REVISION</emphasis>, <emphasis role="strong">DEB_VERSION_UPSTREAM</emphasis>, and <emphasis role="strong">DEB_DISTRIBUTION</emphasis> variables.  <?asciidoc-br?> These are useful for backport support etc..
zh: <emphasis role="strong">DEB_SOURCE</emphasis>、<emphasis role="strong">DEB_VERSION</emphasis>、<emphasis role="strong">DEB_VERSION_EPOCH_UPSTREAM</emphasis>、<emphasis role="strong">DEB_VERSION_UPSTREAM_REVISION</emphasis>、<emphasis role="strong">DEB_VERSION_UPSTREAM</emphasis> 和 <emphasis role="strong">DEB_DISTRIBUTION</emphasis> 變數。它們在向後移植（backport）支援等場景下能起到一定的作用。

note: type: Content of: <book><chapter><section><section><variablelist><varlistentry><listitem><simpara>
en: <emphasis role="strong">DEB_VENDOR</emphasis> and <emphasis role="strong">DEB_PARENT_VENDOR</emphasis> variables; and <emphasis role="strong">dpkg_vendor_derives_from</emphasis> macro.  <?asciidoc-br?> These are useful for vendor support (Debian, Ubuntu, …).
zh: <emphasis role="strong">DEB_VENDOR</emphasis> 和 <emphasis role="strong">DEB_PARENT_VENDOR</emphasis> 變數，以及 <emphasis role="strong">dpkg_vendor_derives_from</emphasis> 巨集。它們在系統提供方的支援方面（Debian、Ubuntu 等）有其特定用處。

note: type: Content of: <book><chapter><section><section><variablelist><varlistentry><listitem><simpara>
en: Set <emphasis role="strong">DEB_HOST_</emphasis>* and <emphasis role="strong">DEB_BUILD_</emphasis>* variables.  <?asciidoc-br?> An alternative method of retrieving those variables is to invoke <emphasis role="strong">dpkg-architecture</emphasis> directly and query the value of a single variable. With explicit invocation of <emphasis role="strong">dpkg-architecture</emphasis> to retrieve necessary variables, there is no need to include <emphasis role="strong">architecture.mk</emphasis> in <emphasis role="strong">debian/rules</emphasis>, which would import all architecture-related variables.
zh: 設定 <emphasis role="strong">DEB_HOST_</emphasis>* 和 <emphasis role="strong">DEB_BUILD_</emphasis>* 變數。除此之外存在一種替代方案，即直接呼叫 <emphasis role="strong">dpkg-architecture</emphasis> 來取得變數，一次呼叫查詢得到一個變數值。如顯性呼叫 <emphasis role="strong">dpkg-architecture</emphasis> 以取得必需變數的話，便不再需要在 <emphasis role="strong">debian/rules</emphasis> 中包含 <emphasis role="strong">architecture.mk</emphasis> 了（後者會引入全部架構相關的變數）。

note: type: Content of: <book><chapter><section><section><variablelist><varlistentry><listitem><simpara>
en: Set <emphasis role="strong">CFLAGS</emphasis>, <emphasis role="strong">CPPFLAGS</emphasis>, <emphasis role="strong">CXXFLAGS</emphasis>, <emphasis role="strong">OBJCFLAGS</emphasis>, <emphasis role="strong">OBJCXXFLAGS</emphasis>, <emphasis role="strong">GCJFLAGS</emphasis>, <emphasis role="strong">FFLAGS</emphasis>, <emphasis role="strong">FCFLAGS</emphasis>, and <emphasis role="strong">LDFLAGS</emphasis> build flags.
zh: 設定 <emphasis role="strong">CFLAGS</emphasis>、<emphasis role="strong">CPPFLAGS</emphasis>、<emphasis role="strong">CXXFLAGS</emphasis>、<emphasis role="strong">OBJCFLAGS</emphasis>、<emphasis role="strong">OBJCXXFLAGS</emphasis>、<emphasis role="strong">GCJFLAGS</emphasis>、<emphasis role="strong">FFLAGS</emphasis>、<emphasis role="strong">FCFLAGS</emphasis> 和 <emphasis role="strong">LDFLAGS</emphasis> 這些構建標誌（build flags）。

note: type: Content of: <book><chapter><section><section><simpara>
en: If you wish to use some of these useful variables in <emphasis role="strong">debian/rules</emphasis>, copy relevant code to <emphasis role="strong">debian/rules</emphasis> or write a simpler alternative in it.  Please keep <emphasis role="strong">debian/rules</emphasis> simple.
zh: 如果您希望在 <emphasis role="strong">debian/rules</emphasis> 中使用其中的某些變數，您可以將相關的程式碼複製到 <emphasis role="strong">debian/rules</emphasis> 檔案中，或是重寫一份簡單的替代實現。總而言之請保持 <emphasis role="strong">debian/rules</emphasis> 檔案儘量簡單。

note: type: Content of: <book><chapter><section><section><simpara>
en: For example, you can add an extra option to <emphasis role="strong">CONFIGURE_FLAGS</emphasis> for <emphasis role="strong">linux-any</emphasis> target architectures by adding the followings to <emphasis role="strong">debian/rules</emphasis>:
zh: 例如，您按如下的方法在 <emphasis role="strong">debian/rules</emphasis> 檔案中新增內容，從而為 <emphasis role="strong">linux-any</emphasis> 目標架構添加額外的 <emphasis role="strong">CONFIGURE_FLAGS</emphasis>：

note: type: Content of: <book><chapter><section><section><tip><simpara>
en: It was useful to include <emphasis role="strong">buildflags.mk</emphasis> in <emphasis role="strong">debian/rules</emphasis> to set the build flags such as <emphasis role="strong">CPPFLAGS</emphasis>, <emphasis role="strong">CFLAGS</emphasis>, <emphasis role="strong">LDFLAGS</emphasis>, etc. properly while honoring <emphasis role="strong">DEB_CFLAGS_MAINT_APPEND</emphasis>, <emphasis role="strong">DEB_BUILD_MAINT_OPTIONS</emphasis>, etc. for the <emphasis role="strong">debhelper</emphasis> “compat &lt;= 8”.  Now you should use the <emphasis role="strong">debhelper</emphasis> “compat &gt;= 9”, should not include <emphasis role="strong">buildflags.mk</emphasis> without specific reasons, and should let the <emphasis role="strong">dh</emphasis> command set these build flags.
zh: 歷史上對於 <emphasis role="strong">debhelper</emphasis> 相容等級小於等於 8 的情況下，在 <emphasis role="strong">debian/rules</emphasis> 檔案中包含 <emphasis role="strong">buildflags.mk</emphasis> 檔案是很有用的，它可以合適地設定一些構建標誌，如 <emphasis role="strong">CPPFLAGS</emphasis>、<emphasis role="strong">CFLAGS</emphasis>、<emphasis role="strong">LDFLAGS</emphasis> 等，同時保證對特定選項，如 <emphasis role="strong">DEB_CFLAGS_MAINT_APPEND</emphasis> 和 <emphasis role="strong">DEB_BUILD_MAINT_OPTIONS</emphasis> 的合適處理。現在您應當使用的 <emphasis role="strong">debhelper</emphasis> 相容等級大於等於 9，故如無特殊原因，請不要繼續包含 <emphasis role="strong">buildflags.mk</emphasis>，請交由 <emphasis role="strong">dh</emphasis> 命令來處理和設定這些構建標誌。

note: type: Content of: <book><chapter><section><section><simpara>
en: See <xref linkend="multiarch"/>, <emphasis role="strong">dpkg-architecture</emphasis>(1) and <emphasis role="strong">dpkg-buildflags</emphasis>(1).
zh: 參見 <xref linkend="multiarch"/>、<emphasis role="strong">dpkg-architecture</emphasis>(1) 和 <emphasis role="strong">dpkg-buildflags</emphasis>(1)。

note: type: Content of: <book><chapter><section><section><title>
en: Reproducible build
zh: 可重現的構建

note: type: Content of: <book><chapter><section><section><simpara>
en: Here are some recommendations to attain a reproducible build result.
zh: 為了做到套件可重現的構建，這裡給出一些相關的建議。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Don’t embed the timestamp based on the system time.
zh: 不要嵌入基於系統時間的時間戳。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Use “<emphasis role="strong">dh $@</emphasis>” in the <emphasis role="strong">debian/rules</emphasis> to access the latest <emphasis role="strong">debhelper</emphasis> features.
zh: 在 <emphasis role="strong">debian/rules</emphasis> 中使用“<emphasis role="strong">dh $@</emphasis>”以應用最新的 <emphasis role="strong">debhelper</emphasis> 特性。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Export the build environment as “<emphasis role="strong">LC_ALL=C.UTF-8</emphasis>” (see <xref linkend="utf-8-build"/>).
zh: 在構建環境中匯出環境變數“<emphasis role="strong">LC_ALL=C.UTF-8</emphasis>”（參見 <xref linkend="utf-8-build"/>）。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Set the timestamp used in the upstream source from the value of the debhelper-provided environment variable <emphasis role="strong">$SOURCE_DATE_EPOCH</emphasis>.
zh: 對上游原始碼中使用的時間戳，使用 debhelper 提供的環境變數 <emphasis role="strong">$SOURCE_DATE_EPOCH</emphasis> 的值。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Read more at <ulink url="https://wiki.debian.org/ReproducibleBuilds">ReproducibleBuilds</ulink>.
zh: 閱讀<ulink url="https://wiki.debian.org/ReproducibleBuilds">可重現構建</ulink>瞭解更多資訊。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://wiki.debian.org/ReproducibleBuilds/Howto">ReproducibleBuilds Howto</ulink>.
zh: <ulink url="https://wiki.debian.org/ReproducibleBuilds/Howto">可重現構建操作方法</ulink>。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://wiki.debian.org/ReproducibleBuilds/TimestampsProposal">ReproducibleBuilds TimestampsProposal</ulink>.
zh: <ulink url="https://wiki.debian.org/ReproducibleBuilds/TimestampsProposal">可重現構建時間戳處理提議</ulink>。

note: type: Content of: <book><chapter><section><section><simpara>
en: The control file <emphasis>source-name_source-version_arch</emphasis><emphasis role="strong">.buildinfo</emphasis> generated by <emphasis role="strong">dpkg-genbuildinfo</emphasis>(1) records the build environment. See <emphasis role="strong">deb-buildinfo</emphasis>(5)
zh: 由 <emphasis role="strong">dpkg-genbuildinfo</emphasis>(1) 生成的控制檔案 <emphasis>source-name_source-version_arch</emphasis><emphasis role="strong">.buildinfo</emphasis> 記錄了構建環境資訊。參見 <emphasis role="strong">deb-buildinfo</emphasis>(5)

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/control</emphasis> file consists of blocks of meta data separated by a blank line.  Each block of meta data defines the following in this order:
zh: <emphasis role="strong">debian/control</emphasis> 檔案包含了由空行分隔的數塊參數資料。每塊元資料按照如下的順序定義了下面這些內容：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: meta data for the Debian source package
zh: Debian 原始碼套件的參數資料

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: meta data for the Debian binary packages
zh: Debian 二進位制套件的參數

note: type: Content of: <book><chapter><section><section><title>
en: Split of a Debian binary package
zh: Debian 二進位制套件的拆分

note: type: Content of: <book><chapter><section><section><simpara>
en: For well behaving build systems, the split of a Debian binary package into small ones can be realized as follows.
zh: 對行為良好的構建系統來說，對 Debian 二進位制包的拆分可以由如下方式實現。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Create binary package entries for all binary packages in the <emphasis role="strong">debian/control</emphasis> file.
zh: 為所有二進位制套件在 <emphasis role="strong">debian/control</emphasis> 檔案中建立對應的二進位制套件條目。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: List all file paths (relative to <emphasis role="strong">debian/tmp</emphasis>) in the corresponding <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.install</emphasis> files.
zh: 在對應的 <emphasis role="strong">debian/</emphasis><emphasis>二進位制套件名</emphasis><emphasis role="strong">.install</emphasis> 檔案中列出所有檔案的路徑（相對於 <emphasis role="strong">debian/tmp</emphasis> 目錄）。

note: type: Content of: <book><chapter><section><section><simpara>
en: Please check examples in this guide:
zh: 請檢視本指南中相關的例子：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <xref linkend="autotools-multi"/> (Autotools based)
zh: <xref linkend="autotools-multi"/>（基於 Autotools）

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <xref linkend="cmake-multi"/> (CMake based)
zh: <xref linkend="cmake-multi"/>（基於 CMake）

note: type: Content of: <book><chapter><section><section><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command with the <emphasis role="strong">-b</emphasis> option provides an intuitive and flexible method to create the initial template <emphasis role="strong">debian/control</emphasis> file defining the split of the Debian binary packages with following stanzas:
zh: <emphasis role="strong">debmake</emphasis> 命令的 <emphasis role="strong">-b</emphasis> 選項提供了一個符合直覺又靈活的功能，可以用來建立 <emphasis role="strong">debian/control</emphasis> 的初始模板檔案，其中可以定義多個 Debian 二進位制套件，每節中含有如下欄位：

note: type: Content of: <book><chapter><section><section><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command also sets an appropriate set of substvars used in each pertinent dependency stanza.
zh: <emphasis role="strong">debmake</emphasis> 命令也會在每個適當的依賴欄位中設置合適的變數替換佔位符（substvars）。

note: type: Content of: <book><chapter><section><section><section><simpara>
en: Let’s quote the pertinent part from the <emphasis role="strong">debmake</emphasis> manpage here.
zh: 我們在這裡直接引用 <emphasis role="strong">debmake</emphasis> 手冊頁中的相關一部分內容。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-b</emphasis> "<emphasis>binarypackage[:type],…</emphasis>", <emphasis role="strong">--binaryspec</emphasis> "<emphasis>binarypackage[:type],…</emphasis>"
zh: <emphasis role="strong">-b</emphasis> "<emphasis>二進位制套件名[:type],…</emphasis>", <emphasis role="strong">--binaryspec</emphasis> "<emphasis>二進位制套件名[:type],…</emphasis>"

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: set the binary package specs by a comma separated list of <emphasis>binarypackage:type</emphasis> pairs, e.g., in the full form “<emphasis role="strong">foo:bin,foo-doc:doc,libfoo1:lib,libfoo-dev:dev</emphasis>” or in the short form, “<emphasis role="strong">-doc,libfoo1,libfoo-dev</emphasis>”.
zh: 設定二進位制套件的指定型別內容，使用一個用逗號分隔的<emphasis>二進位制套件名:型別</emphasis>成對列表；例如，使用完整形式“<emphasis role="strong">foo:bin,foo-doc:doc,libfoo1:lib,libfoo-dev:dev</emphasis>”或者使用短形式，“<emphasis role="strong">-doc,libfoo1,libfoo-dev</emphasis>”。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: Here, <emphasis>binarypackage</emphasis> is the binary package name, and the optional <emphasis>type</emphasis> is chosen from the following <emphasis>type</emphasis> values:
zh: 這裡，<emphasis>二進位制套件</emphasis>是二進位制套件名稱，可選的<emphasis>類型</emphasis>應當從下面的<emphasis>型別</emphasis>值中進行選取：

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">bin</emphasis>: C/C++ compiled ELF binary code package (any, foreign) (default, alias: <emphasis role="strong">""</emphasis>, i.e., <emphasis>null-string</emphasis>)
zh: <emphasis role="strong">bin</emphasis>：C/C++ 預編譯 ELF 二進位制程式碼套件（any，foreign）（預設，別名：<emphasis role="strong">""</emphasis>，即，<emphasis>空字串</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">data</emphasis>: Data (fonts, graphics, …) package (all, foreign) (alias: <emphasis role="strong">da</emphasis>)
zh: <emphasis role="strong">data</emphasis>：資料（字型、影象、……）套件（all，foreign）（別名：<emphasis role="strong">da</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dev</emphasis>: Library development package (any, same) (alias: <emphasis role="strong">de</emphasis>)
zh: <emphasis role="strong">dev</emphasis>：程式庫開發套件（any，same）（別名：<emphasis role="strong">de</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">doc</emphasis>: Documentation package (all, foreign) (alias: <emphasis role="strong">do</emphasis>)
zh: <emphasis role="strong">doc</emphasis>：文件套件（all，foreign）（別名：<emphasis role="strong">do</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">lib</emphasis>: Library package (any, same) (alias: <emphasis role="strong">l</emphasis>)
zh: <emphasis role="strong">lib</emphasis>：程式庫套件（any，same）（別名：<emphasis role="strong">l</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">perl</emphasis>: Perl script package (all, foreign) (alias: <emphasis role="strong">pl</emphasis>)
zh: <emphasis role="strong">perl</emphasis>：Perl 指令碼套件（all，foreign）（別名：<emphasis role="strong">pl</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">ruby</emphasis>: Ruby script package (all, foreign) (alias: <emphasis role="strong">rb</emphasis>)
zh: <emphasis role="strong">ruby</emphasis>：Ruby 指令碼套件（all，foreign）（別名：<emphasis role="strong">rb</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">script</emphasis>: Shell script package (all, foreign) (alias: <emphasis role="strong">sh</emphasis>)
zh: <emphasis role="strong">script</emphasis>：Shell 指令碼套件（all，foreign）（別名：<emphasis role="strong">sh</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The pair values in the parentheses, such as (any, foreign), are the <emphasis role="strong">Architecture</emphasis> and <emphasis role="strong">Multi-Arch</emphasis> stanza values set in the <emphasis role="strong">debian/control</emphasis> file.
zh: 括號內成對的值，例如（any，foreign），是套件的<emphasis role="strong">架構</emphasis>和<emphasis role="strong">多架構（Multi-Arch）</emphasis>特性的值，它們將設定在 <emphasis role="strong">debian/control</emphasis> 檔案中。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: In many cases, the <emphasis role="strong">debmake</emphasis> command makes good guesses for <emphasis>type</emphasis> from <emphasis>binarypackage</emphasis>.  If <emphasis>type</emphasis> is not obvious, <emphasis>type</emphasis> is set to <emphasis role="strong">bin</emphasis>.  For example, <emphasis role="strong">libfoo</emphasis> sets <emphasis>type</emphasis> to <emphasis role="strong">lib</emphasis>, and <emphasis role="strong">font-bar</emphasis> sets <emphasis>type</emphasis> to <emphasis role="strong">data</emphasis>, …
zh: 大多數情況下，<emphasis role="strong">debmake</emphasis> 命令可以有效地從<emphasis>二進位制套件</emphasis>的名稱猜測出正確的<emphasis>型別</emphasis>。如果<emphasis>型別</emphasis>的值並不明顯，程式將回退到將<emphasis>型別</emphasis>設定為<emphasis role="strong">bin</emphasis>。例如，<emphasis role="strong">libfoo</emphasis> 設定<emphasis>型別</emphasis>為 <emphasis role="strong">lib</emphasis>，而 <emphasis role="strong">font-bar</emphasis> 會令程式設定<emphasis>型別</emphasis>為 <emphasis role="strong">data</emphasis>，……

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: If the source tree contents do not match settings for <emphasis>type</emphasis>, the <emphasis role="strong">debmake</emphasis> command warns you.
zh: 如果原始碼樹的內容和<emphasis>型別</emphasis>的設定不一致，<emphasis role="strong">debmake</emphasis> 命令會發出警告。

note: type: Content of: <book><chapter><section><section><section><title>
en: Package split scenario and examples
zh: 拆包的場景和例子

note: type: Content of: <book><chapter><section><section><section><simpara>
en: Here are some typical multiarch package split scenarios for the following upstream source examples using the <emphasis role="strong">debmake</emphasis> command:
zh: 對於下面這樣的上游原始碼範例，我們在這裡給出使用 <emphasis role="strong">debmake</emphasis> 處理時一些典型的 multiarch 套件拆分的場景和做法：

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><simpara>
en: a library source <emphasis>libfoo-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis>
zh: 一個程式庫原始碼 <emphasis>libfoo-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><simpara>
en: a tool source <emphasis>bar-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis> written in a compiled language
zh: 一個軟體工具原始碼 <emphasis>bar-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis>，軟體由編譯型語言編寫

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><simpara>
en: a tool source <emphasis>baz-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis> written in an interpreted language
zh: 一個軟體工具原始碼 <emphasis>baz-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis>，軟體由解釋型語言編寫

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><thead><row><entry>
en: <emphasis>binarypackage</emphasis>
zh: <emphasis>二進位制套件</emphasis>

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><thead><row><entry>
en: <emphasis>type</emphasis>
zh: <emphasis>型別</emphasis>

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><thead><row><entry>
en: Package content
zh: 套件內容

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><tbody><row><entry><simpara>
en: the shared library, co-installable
zh: 共享程式庫，可共同安裝

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><tbody><row><entry><simpara>
en: the shared library header files etc., co-installable
zh: 共享程式庫標頭檔案及相關開發檔案，可共同安裝

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><tbody><row><entry><simpara>
en: the run-time support programs, not co-installable
zh: 執行時支援程式，不可共同安裝

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><tbody><row><entry><simpara>
en: the shared library documentation files
zh: 共享程式庫文件

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><tbody><row><entry><simpara>
en: the compiled program files, not co-installable
zh: 編譯好的程式檔案，不可共同安裝

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><tbody><row><entry><simpara>
en: the documentation files for the program
zh: 程式的配套文件檔案

note: type: Content of: <book><chapter><section><section><section><informaltable><tgroup><tbody><row><entry><simpara>
en: the interpreted program files
zh: 解釋型程式檔案

note: type: Content of: <book><chapter><section><section><section><title>
en: The library package name
zh: 程式庫套件名稱

note: type: Content of: <book><chapter><section><section><section><simpara>
en: Let’s consider that the upstream source tarball of the <emphasis role="strong">lib</emphasis><emphasis>foo</emphasis> library is updated from <emphasis role="strong">lib</emphasis><emphasis>foo-7.0</emphasis><emphasis role="strong">.tar.gz</emphasis> to <emphasis role="strong">lib</emphasis><emphasis>foo-8.0</emphasis><emphasis role="strong">.tar.gz</emphasis> with a new SONAME major version which affects other packages.
zh: 我們考慮 <emphasis role="strong">lib</emphasis><emphasis>foo</emphasis> 這個程式庫的上游 tarball 原始碼壓縮包的名字從 <emphasis role="strong">lib</emphasis><emphasis>foo-7.0</emphasis><emphasis role="strong">.tar.gz</emphasis> 更新為了 <emphasis role="strong">lib</emphasis><emphasis>foo-8.0</emphasis><emphasis role="strong">.tar.gz</emphasis>，同時帶有一次 SONAME 大版本的跳躍（並因此影響了其它套件）。

note: type: Content of: <book><chapter><section><section><section><simpara>
en: The binary library package must be renamed from <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis> to <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis> to keep the <emphasis role="strong">unstable</emphasis> suite system working for all dependent packages after the upload of the package based on the <emphasis role="strong">lib</emphasis><emphasis>foo-8.0</emphasis><emphasis role="strong">.tar.gz</emphasis>.
zh: 程式庫的二進位制套件將必須從 <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis> 重新命名為 <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis> 以保持使用 <emphasis role="strong">unstable</emphasis> 套件的系統上所有依賴該程式庫的套件在上傳了基於 <emphasis role="strong">lib</emphasis><emphasis>foo-8.0</emphasis><emphasis role="strong">.tar.gz</emphasis> 的新程式庫後仍然能夠正常運行。

note: type: Content of: <book><chapter><section><section><section><warning><simpara>
en: If the binary library package isn’t renamed, many dependent packages in the <emphasis role="strong">unstable</emphasis> suite become broken just after the library upload even if a binNMU upload is requested.  The binNMU may not happen immediately after the upload due to several reasons.
zh: 如果這個二進位制程式庫套件沒有得到更名，許多使用 <emphasis role="strong">unstable</emphasis> 套件的系統上的各個依賴該程式庫的套件會在新的程式庫包上傳後立刻破損，即便立刻請求進行 binNMU 上傳也無法避免這個問題。由於種種原因，binNMU 不可能在上傳後立刻開始進行，故無法緩解問題。

note: type: Content of: <book><chapter><section><section><section><simpara>
en: The <emphasis role="strong">-dev</emphasis> package must follow one of the following naming rules:
zh: <emphasis role="strong">-dev</emphasis> 套件必須遵循以下命名規則：

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><simpara>
en: Use the <emphasis role="strong">unversioned -dev</emphasis> package name: <emphasis role="strong">lib</emphasis><emphasis>foo</emphasis><emphasis role="strong">-dev</emphasis>
zh: 使用<emphasis role="strong">不帶版本號的 -dev</emphasis> 套件名稱：<emphasis role="strong">lib</emphasis><emphasis>foo</emphasis><emphasis role="strong">-dev</emphasis>

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This is the typical one for leaf library packages.
zh: 該情況通常適用於依賴關係處於葉節點的程式庫套件。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Only one version of the library source package is allowed in the archive.
zh: 倉庫內只允許存在一個版本的程式庫原始碼套件。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The associated library package needs to be renamed from <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis> to <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis> to prevent dependency breakage in the <emphasis role="strong">unstable</emphasis> archive during the library transition.
zh: 其相關聯的程式庫套件在程式庫變遷進行時需要從 <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis> 重新命名為 <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis> 以避免 <emphasis role="strong">unstable</emphasis> 倉庫內依賴關係的破壞。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This approach should be used if the simple binNMU resolves the library dependency quickly for all affected packages. (<ulink url="https://en.wikipedia.org/wiki/Application_binary_interface">ABI</ulink> change by dropping the deprecated <ulink url="https://en.wikipedia.org/wiki/Application_programming_interface">API</ulink> while keeping the active API unchanged.)
zh: 該方法適用於簡單 binNMU 可以快速解決所有受影響套件對該程式庫依賴的情況下。（<ulink url="https://en.wikipedia.org/wiki/Application_binary_interface">ABI</ulink> 有變化，過時的 <ulink url="https://en.wikipedia.org/wiki/Application_programming_interface">API</ulink> 被移除而常用、活躍的 API 未變化。）

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This approach may still be a good idea if manual code updates, etc. can be coordinated and manageable within limited packages. (<ulink url="https://en.wikipedia.org/wiki/Application_programming_interface">API</ulink> change)
zh: 該方法有時也能適用於可協調進行手動的程式碼更新，影響範圍限定在有限的一些套件中的情況下。（<ulink url="https://en.wikipedia.org/wiki/Application_programming_interface">API</ulink> 有變化）

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><simpara>
en: Use the <emphasis role="strong">versioned -dev</emphasis> package names: <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis><emphasis role="strong">-dev</emphasis> and <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis><emphasis role="strong">-dev</emphasis>
zh: 使用<emphasis role="strong">帶版本的 -dev</emphasis> 套件名稱：<emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis><emphasis role="strong">-dev</emphasis> 和 <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis><emphasis role="strong">-dev</emphasis>

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This is typical for many major library packages.
zh: 該情況通常適用於各類重要程式庫套件。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Two versions of the library source packages are allowed simultaneously in the archive.
zh: 兩個版本的程式庫原始碼套件可同時出現在發行版倉庫中。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Make all dependent packages depend on <emphasis role="strong">lib</emphasis><emphasis>foo</emphasis><emphasis role="strong">-dev</emphasis>.
zh: 令所有依賴該程式庫的套件依賴 <emphasis role="strong">lib</emphasis><emphasis>foo</emphasis><emphasis role="strong">-dev</emphasis>。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Make both <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis><emphasis role="strong">-dev</emphasis> and <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis><emphasis role="strong">-dev</emphasis> provide <emphasis role="strong">lib</emphasis><emphasis>foo</emphasis><emphasis role="strong">-dev</emphasis>.
zh: 令 <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis><emphasis role="strong">-dev</emphasis> 和 <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis><emphasis role="strong">-dev</emphasis> 兩者都提供 <emphasis role="strong">lib</emphasis><emphasis>foo</emphasis><emphasis role="strong">-dev</emphasis>。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The source package needs to be renamed as <emphasis role="strong">lib</emphasis><emphasis>foo7-7.0</emphasis><emphasis role="strong">.tar.gz</emphasis> and <emphasis role="strong">lib</emphasis><emphasis>foo8-8.0</emphasis><emphasis role="strong">.tar.gz</emphasis> respectively from <emphasis role="strong">lib</emphasis><emphasis>foo-?.0</emphasis><emphasis role="strong">.tar.gz</emphasis>.
zh: 原始碼套件需要從 <emphasis role="strong">lib</emphasis><emphasis>foo-?.0</emphasis><emphasis role="strong">.tar.gz</emphasis> 相應地重新命名為 <emphasis role="strong">lib</emphasis><emphasis>foo7-7.0</emphasis><emphasis role="strong">.tar.gz</emphasis> 和 <emphasis role="strong">lib</emphasis><emphasis>foo8-8.0</emphasis><emphasis role="strong">.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The package specific install file path including <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis> and <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis> respectively for header files etc. needs to be chosen to make them co-installable.
zh: 需要仔細選擇 <emphasis role="strong">lib</emphasis><emphasis>foo7</emphasis> 和 <emphasis role="strong">lib</emphasis><emphasis>foo8</emphasis> 套件檔案安裝時的路徑，如標頭檔案等等，以保證它們可以同時安裝。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Do not use this heavy handed approach, if possible.
zh: 可能的話，不要使用這個重量級的、需要大量人為干預的方法。

note: type: Content of: <book><chapter><section><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This approach should be used if the update of multiple dependent packages require manual code updates, etc. (<ulink url="https://en.wikipedia.org/wiki/Application_programming_interface">API</ulink> change)  Otherwise, the affected packages become RC buggy with FTBFS.
zh: 該方法適用於存在多個依賴該程式庫的套件，且升級時常常涉及手動程式碼更新的場景。（<ulink url="https://en.wikipedia.org/wiki/Application_programming_interface">API</ulink> 有變化）否則，受影響的套件會無法從原始碼重新構建並導致對發行而言致命的 bug 出現。

note: type: Content of: <book><chapter><section><section><section><tip><simpara>
en: If the data encoding scheme changes (e.g., latin1 to utf-8), the same care as the API change needs to be taken.
zh: 如果包內資料檔案編碼方案有所變化（如，從 latin1 變為 utf-8），該場景應比照 API 變化做類似的考慮與處理。

note: type: Content of: <book><chapter><section><section><section><simpara>
en: See <xref linkend="lib"/>.
zh: 參見 <xref linkend="lib"/>。

note: type: Content of: <book><chapter><section><section><simpara>
en: The <emphasis role="strong">debian/control</emphasis> file also defines the package dependency in which the <ulink url="https://www.debian.org/doc/debian-policy/ch-source.html#s-substvars">variable substitutions mechanism</ulink> (substvar) may be used to free package maintainers from chores of tracking most of the simple package dependency cases.  See <emphasis role="strong">deb-substvars</emphasis>(5).
zh: <emphasis role="strong">debian/control</emphasis> 也定義了套件的依賴關系，其中<ulink url="https://www.debian.org/doc/debian-policy/ch-source.html#s-substvars">變數替換機制</ulink>（substvar）的功能可以用來將套件維護者從追蹤（大多數簡單的）套件依賴的重複勞動中解放出來。請參見 <emphasis role="strong">deb-substvars</emphasis>(5)。

note: type: Content of: <book><chapter><section><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command supports the following substvars:
zh: <emphasis role="strong">debmake</emphasis> 命令支援下列變數替換指令：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">${misc:Depends}</emphasis> for all binary packages
zh: <emphasis role="strong">${misc:Depends}</emphasis>，可用於所有二進位制套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">${misc:Pre-Depends}</emphasis> for all multiarch packages
zh: <emphasis role="strong">${misc:Pre-Depends}</emphasis>，可用於所有 multiarch 套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">${shlibs:Depends}</emphasis> for all binary executable and library packages
zh: <emphasis role="strong">${shlibs:Depends}</emphasis>，可用於所有含有二進位制可執行檔案或程式庫的套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">${python:Depends}</emphasis> for all Python packages
zh: <emphasis role="strong">${python:Depends}</emphasis>，可用於所有 Python 套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">${python3:Depends}</emphasis> for all Python3 packages
zh: <emphasis role="strong">${python3:Depends}</emphasis>，可用於所有 Python3 套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">${perl:Depends}</emphasis> for all Perl packages
zh: <emphasis role="strong">${perl:Depends}</emphasis>，用於所有 Perl 套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">${ruby:Depends}</emphasis> for all Ruby packages
zh: <emphasis role="strong">${ruby:Depends}</emphasis>，用於所有 Ruby 套件

note: type: Content of: <book><chapter><section><section><simpara>
en: For the shared library, required libraries found simply by "<emphasis role="strong">objdump -p</emphasis> <emphasis>/path/to/program</emphasis> <emphasis role="strong">| grep NEEDED</emphasis>" are covered by the <emphasis role="strong">shlib</emphasis> substvar.
zh: 對共享連結程式庫來說，所需要的依賴程式庫是由執行“<emphasis role="strong">objdump -p</emphasis> <emphasis>/path/to/program</emphasis> <emphasis role="strong">| grep NEEDED</emphasis>”這樣的命令來得到的，由 <emphasis role="strong">shlib</emphasis> 佔位符進行變數替換。

note: type: Content of: <book><chapter><section><section><simpara>
en: For Python and other interpreters, required modules found simply looking for lines with “<emphasis role="strong">import</emphasis>”, “<emphasis role="strong">use</emphasis>”, “<emphasis role="strong">require</emphasis>”, etc., are covered by the corresponding substvars.
zh: 對於 Python 和其它直譯器來說，所需的模組通常由對包含類似“<emphasis role="strong">import</emphasis>”、“<emphasis role="strong">use</emphasis>”、“<emphasis role="strong">require</emphasis>”等等關鍵字的行進行解析，並會體現在各自對應的變數替換佔位符所在位置上。

note: type: Content of: <book><chapter><section><section><simpara>
en: For other programs which do not deploy their own substvars, the <emphasis role="strong">misc</emphasis> substvar covers their dependency.
zh: 對其它沒有部署屬於自己範疇內的變數替換機制的情況，<emphasis role="strong">misc</emphasis> 變數替換佔位符通常用來覆蓋對應的依賴替換需求。

note: type: Content of: <book><chapter><section><section><simpara>
en: For POSIX shell programs, there is no easy way to identify the dependency and no substvar covers their dependency.
zh: 對 POSIX shell 程式來說，並沒有簡單的辦法來驗證其依賴關係，substvar 的變數替換也無法自動得出它們的依賴。

note: type: Content of: <book><chapter><section><section><simpara>
en: For libraries and modules required via the dynamic loading mechanism including the <ulink url="https://wiki.gnome.org/Projects/GObjectIntrospection">GObject introspection</ulink> mechanism, there is no easy way to identify the dependency and no substvar covers their dependency.
zh: 對使用動態載入機制，包括 <ulink url="https://wiki.gnome.org/Projects/GObjectIntrospection">GObject introspection</ulink> 機制的程式庫和模組來說，現在沒有簡單的方法可以檢查依賴關係，變數替換機制也無法自動推匯出所需的依賴。

note: type: Content of: <book><chapter><section><section><title>
en: binNMU safe
zh: binNMU 安全

note: type: Content of: <book><chapter><section><section><simpara>
en: A <ulink url="https://wiki.debian.org/binNMU">binNMU</ulink> is a binary-only non-maintainer upload performed for library transitions etc.  In a binNMU upload, only the “<emphasis role="strong">Architecture: any</emphasis>” packages are rebuilt with a suffixed version number (e.g. version 2.3.4-3 will become 2.3.4-3+b1).  The “<emphasis role="strong">Architecture: all</emphasis>” packages are not built.
zh: 一個 <ulink url="https://wiki.debian.org/binNMU">binNMU（二進位制非維護者上傳）</ulink> 是為程式庫遷移或其它目的所作的非維護者套件上傳。在一次 binNMU 上傳中，只有“<emphasis role="strong">Architecture: any</emphasis>”的套件會被重構建，其版本號會在末尾附加一個編號（例如，原來版本為 2.3.4-3，新上傳的包版本會變成 2.3.4-3+b1）。所有“<emphasis role="strong">Architecture: all</emphasis>”的包將不會重新構建。

note: type: Content of: <book><chapter><section><section><simpara>
en: The dependency defined in the <emphasis role="strong">debian/control</emphasis> file among binary packages from the same source package should be safe for the binNMU.  This needs attention if there are both “<emphasis role="strong">Architecture: any</emphasis>” and “<emphasis role="strong">Architecture: all</emphasis>” packages involved in it.
zh: 來自同一個原始碼套件的各個二進位制包如果在 <emphasis role="strong">debian/control</emphasis> 檔案中有互相的依賴關係，這些二進位制包通常情況下應當對 binNMU 是安全的（即，進行 binNMU 不會破壞依賴關係）。然而，在“<emphasis role="strong">Architecture: any</emphasis>”和“<emphasis role="strong">Architecture: all</emphasis>”的套件同時由同一原始碼套件產出，且互相之間有依賴關係時，需要小心對待所依賴的版本，必要時應做出調整。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">Architecture: any</emphasis>” package: depends on “<emphasis role="strong">Architecture: any</emphasis>” <emphasis>foo</emphasis> package
zh: “<emphasis role="strong">Architecture: any</emphasis>”的套件依賴於“<emphasis role="strong">Architecture: any</emphasis>”<emphasis>foo</emphasis> 套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">Architecture: any</emphasis>” package: depends on “<emphasis role="strong">Architecture: all</emphasis>” <emphasis>bar</emphasis> package
zh: “<emphasis role="strong">Architecture: any</emphasis>”的套件依賴於“<emphasis role="strong">Architecture: all</emphasis>”<emphasis>bar</emphasis> 套件

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">Architecture: all</emphasis>” package: depends on “<emphasis role="strong">Architecture: any</emphasis>” <emphasis>baz</emphasis> package
zh: “<emphasis role="strong">Architecture: all</emphasis>”的套件依賴於“<emphasis role="strong">Architecture: any</emphasis>”<emphasis>baz</emphasis> 套件

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/changelog</emphasis> file records the Debian package history and defines the upstream package version and the Debian revision in its first line.  The changes need to be documented in the specific, formal, and concise style.
zh: <emphasis role="strong">debian/changelog</emphasis> 檔案記錄了 Debian 軟體包的歷史並在其第一行定義了上游套件的版本和 Debian 修訂版本。所有改變的內容應當以明確、正式而簡明的語言風格進行記錄。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Even if you are uploading your package by yourself, you must document all non-trivial user-visible changes such as:
zh: 即便您在自己獨立進行套件上傳，您也必須記錄所有較重要、使用者可見的變更，例如：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: the security related bug fixes.
zh: 安全相關的漏洞修復。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: the user interface changes.
zh: 使用者介面變動。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: If you are asking your sponsor to upload it, you should document changes more comprehensively, including all packaging related ones, to help reviewing your package.
zh: 如果您需要他人協助您進行上傳，您應當更詳盡地記錄變更內容，包括所有打包相關的變動，從而方便他人對您的套件進行審查。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The sponsor shouldn’t second guess your thought behind your package.
zh: 協助上傳的人員不應該也通常不會猜測您沒有寫出來的想法，所以請認真書寫變更信息。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The sponsor’s time is more valuable than yours.
zh: 通常來說，協助您上傳的人的時間比您的時間更寶貴。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command creates the initial template file with the upstream package version and the Debian revision.  The distribution is set to <emphasis role="strong">UNRELEASED</emphasis> to prevent accidental upload to the Debian archive.
zh: <emphasis role="strong">debmake</emphasis> 命令會建立初始的模板檔案，其中帶有上游套件版本和 Debian 打包修訂編號。發行版部分被設定為 <emphasis role="strong">UNRELEASED</emphasis> 以避免半成品不小心被上傳進入 Debian 倉庫。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debchange</emphasis> command (alias <emphasis role="strong">dch</emphasis>) is commonly used to edit this.
zh: 通常使用 <emphasis role="strong">debchange</emphasis> 命令（它具有一個別名，即 <emphasis role="strong">dch</emphasis>）對其進行編輯。

note: type: Content of: <book><chapter><section><tip><simpara>
en: You can edit the <emphasis role="strong">debian/changelog</emphasis> file manually with any text editor as long as you follow the formatting convention used by the <emphasis role="strong">debchange</emphasis> command.
zh: 您也可以手動使用任何文字編輯器修改 <emphasis role="strong">debian/changelog</emphasis> 檔案，只要您能夠遵循 <emphasis role="strong">debchange</emphasis> 命令所使用的特定文字排版格式即可。

note: type: Content of: <book><chapter><section><tip><simpara>
en: The date string used in the <emphasis role="strong">debian/changelog</emphasis> file can be manually generated by the “<emphasis role="strong">LC_ALL=C date -R</emphasis>” command.
zh: <emphasis role="strong">debian/changelog</emphasis> 檔案使用的日期字串可以使用“<emphasis role="strong">LC_ALL=C date -R</emphasis>”命令手動生成。

note: type: Content of: <book><chapter><section><simpara>
en: This is installed in the <emphasis role="strong">/usr/share/doc/</emphasis><emphasis>binarypackage</emphasis> directory as <emphasis role="strong">changelog.Debian.gz</emphasis> by the <emphasis role="strong">dh_installchangelogs</emphasis> command.
zh: 該檔案將由 <emphasis role="strong">dh_installchangelogs</emphasis> 命令安裝到 <emphasis role="strong">/usr/share/doc/</emphasis><emphasis>binarypackage</emphasis> 目錄，檔名為 <emphasis role="strong">changelog.Debian.gz</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: The upstream changelog is installed in the <emphasis role="strong">/usr/share/doc/</emphasis><emphasis>binarypackage</emphasis> directory as <emphasis role="strong">changelog.gz</emphasis>.
zh: 上游的變更日誌則會安裝至 <emphasis role="strong">/usr/share/doc/</emphasis><emphasis>binarypackage</emphasis> 目錄中，檔名為 <emphasis role="strong">changelog.gz</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: The upstream changelog is automatically found by the <emphasis role="strong">dh_installchangelogs</emphasis> using the case insensitive match of its file name to <emphasis role="strong">changelog</emphasis>, <emphasis role="strong">changes</emphasis>, <emphasis role="strong">changelog.txt</emphasis>, <emphasis role="strong">changes.txt</emphasis>, <emphasis role="strong">history</emphasis>, <emphasis role="strong">history.txt</emphasis>, or <emphasis role="strong">changelog.md</emphasis> and searched in the <emphasis role="strong">./</emphasis> <emphasis role="strong">doc/</emphasis> or <emphasis role="strong">docs/</emphasis> directories.
zh: 上游的變更日誌是由 <emphasis role="strong">dh_installchangelogs</emphasis> 程式自動進行搜尋和處理的；它會使用大小寫不敏感的搜尋方式尋找上游程式碼中特定名稱的檔案，如 <emphasis role="strong">changelog</emphasis>、<emphasis role="strong">changes</emphasis>、<emphasis role="strong">changelog.txt</emphasis>、<emphasis role="strong">changes.txt</emphasis>、<emphasis role="strong">history</emphasis>、<emphasis role="strong">history.txt</emphasis> 或 <emphasis role="strong">changelog.md</emphasis>。除了根目錄，程式還會在 <emphasis role="strong">doc/</emphasis> 目錄和 <emphasis role="strong">docs/</emphasis> 目錄內進行搜尋。

note: type: Content of: <book><chapter><section><simpara><footnote><simpara>
en: If you are using the <emphasis role="strong">vim</emphasis> editor, make sure to save this with the “<emphasis role="strong">:wq</emphasis>” command.
zh: 如果您在使用 <emphasis role="strong">vim</emphasis> 編輯器，請確保使用“<emphasis role="strong">:wq</emphasis>”命令對內容進行儲存。

note: type: Content of: <book><chapter><section><simpara>
en: After finishing your packaging and verifying its quality, please execute the “<emphasis role="strong">dch -r</emphasis>” command and save the finalized <emphasis role="strong">debian/changelog</emphasis> file with the distribution normally set to <emphasis role="strong">unstable</emphasis>. <placeholder type="footnote" id="0"/> If you are packaging for backports, security updates, LTS, etc., please use the appropriate distribution names instead.
zh: 當您完成了主要打包工作並驗證了其質量之後，請考慮執行“<emphasis role="strong">dch -r</emphasis>”命令並將最終完成的 <emphasis role="strong">debian/changelog</emphasis> 檔案中發行版（distribution）部分進行設定，通常該欄位應當使用 <emphasis role="strong">unstable</emphasis>。<placeholder type="footnote" id="0"/> 如果您的打包是一次向後移植（backports）、是安全更新或是對長期支援版的上傳等等其它情況，請使用相應合適的發行版名稱。

note: type: Content of: <book><chapter><section><simpara>
en: Debian takes the copyright and license matters very seriously. The “Debian Policy Manual” enforces having a summary of them in the <emphasis role="strong">debian/copyright</emphasis> file in the package.
zh: Debian 以十分嚴肅的態度對待版權和許可證資訊。《Debian 政策手冊》強制規定軟體包的 <emphasis role="strong">debian/copyright</emphasis> 檔案中需要提供相關資訊的摘要。

note: type: Content of: <book><chapter><section><simpara>
en: You should format it as a <ulink url="https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/">machine-readable debian/copyright file</ulink> (DEP-5).
zh: 您應當按照 <ulink url="https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/">機器可解析的 debian/copyright 檔案</ulink>（DEP-5）對其進行排版。

note: type: Content of: <book><chapter><section><caution><simpara>
en: The <emphasis role="strong">debian/copyright</emphasis> file should be sorted to keep the generic file patterns at the top of the list.  See <xref linkend="koption"/>.
zh: 這裡的 <emphasis role="strong">debian/copyright</emphasis> 檔案中描述的許可證資訊匹配資訊應當合適地進行排序，以確保越寬泛的檔案匹配越靠前。請參見 <xref linkend="koption"/>。

note: type: Content of: <book><chapter><section><simpara><footnote><simpara>
en: The <emphasis role="strong">licensecheck</emphasis> command from the <emphasis role="strong">devscripts</emphasis> package was referenced to make this internal checker.  Now the <emphasis role="strong">licensecheck</emphasis> command is provided in an independent <emphasis role="strong">licensecheck</emphasis> package with a lot of improvements.
zh: 程式以前會在內部呼叫來自 <emphasis role="strong">devscripts</emphasis> 軟體包的 <emphasis role="strong">licensecheck</emphasis> 命令來進行檢查。現在的 <emphasis role="strong">licensecheck</emphasis> 命令由獨立的 <emphasis role="strong">licensecheck</emphasis> 套件所提供，相較從前的實現也有了較大的改進。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command creates the initial DEP-5 compatible template file by scanning the entire source tree.  It uses an internal license checker to classify each license text. <placeholder type="footnote" id="0"/>
zh: <emphasis role="strong">debmake</emphasis> 命令會以掃描整個原始碼樹的方式建立初步的、相容 DEP-5 的模板檔案。它會內部呼叫許可證檢查工具來對許可證文字進行分類。<placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><simpara>
en: Unless specifically requested to be pedantic with the <emphasis role="strong">-P</emphasis> option, the <emphasis role="strong">debmake</emphasis> command skips reporting for auto-generated files with permissive licenses to be practical.
zh: 除非明確指定（有些嚴格過頭的） <emphasis role="strong">-P</emphasis> 選項，<emphasis role="strong">debmake</emphasis> 命令會為了實用性而跳過對自動生成的檔案的檢查與報告，預設它們採用寬鬆的許可證。

note: type: Content of: <book><chapter><section><note><simpara>
en: If you find issues with this license checker, please file a bug report to the <emphasis role="strong">debmake</emphasis> package with the problematic part of text containing the copyright and license.
zh: 如果您發現了這個許可證檢查工具存在一些問題，請對 <emphasis role="strong">debmake</emphasis> 套件提交缺陷報告並提供包含出現問題的許可證和版權資訊在內的相關文字內容。

note: type: Content of: <book><chapter><section><note><simpara>
en: The <emphasis role="strong">debmake</emphasis> command focuses on bunching up same copyright and license claims in detail to create template for <emphasis role="strong">debian/copyright</emphasis>.  In order to do this within reasonable time, it only picks the first section which looks like copyright and license claims.  So its license assignment may not be optimal.  Please also use other tools such as <emphasis role="strong">licensecheck</emphasis>.
zh: <emphasis role="strong">debmake</emphasis> 命令專注於在建立 <emphasis role="strong">debian/copyright</emphasis> 模板時聚合相同的授權和許可證資訊並收錄其詳細內容。為了在有限的時間內儘可能完成工作，工具將只會提取檔案中第一塊看起來像授權文字或許可證宣告的部分。因此，生成的許可證資訊可能並不完美。請同時考慮使用其它工具，如 <emphasis role="strong">licensecheck</emphasis> 輔助進行檢查。

note: type: Content of: <book><chapter><section><tip><simpara>
en: You are highly encouraged to check the license status with the <emphasis role="strong">licensecheck</emphasis>(1) command and, as needed, with your manual code review.
zh: 我們強烈推薦您使用 <emphasis role="strong">licensecheck</emphasis>(1) 命令再次檢查原始碼許可證的狀態，並在有必要的情況下進行人工程式碼審查。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">-p1</emphasis> patches in the <emphasis role="strong">debian/patches/</emphasis> directory are applied in the sequence defined in the <emphasis role="strong">debian/patches/series</emphasis> file to the upstream source tree before the <emphasis role="strong">build</emphasis> process.
zh: 在<emphasis role="strong">構建</emphasis>過程開始之前，<emphasis role="strong">debian/patches/</emphasis> 目錄內的 <emphasis role="strong">-p1</emphasis> 等級的補丁將會按照在 <emphasis role="strong">debian/patches/series</emphasis> 檔案中指定的順序依次應用於上游程式碼樹中。

note: type: Content of: <book><chapter><section><note><simpara>
en: The native Debian package (see <xref linkend="native"/>) doesn’t use these files.
zh: 原生 Debian 套件（參見 <xref linkend="native"/>）將不使用這些檔案。

note: type: Content of: <book><chapter><section><simpara>
en: There are several methods to prepare a series of <emphasis role="strong">-p1</emphasis> patches.
zh: 要準備這一系列 <emphasis role="strong">-p1</emphasis> 等級的補丁，有幾種不同的方式可供您選擇。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">diff</emphasis> command
zh: <emphasis role="strong">diff</emphasis> 命令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: See <xref linkend="diff-u"/>
zh: 參見 <xref linkend="diff-u"/>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Primitive but versatile method
zh: 原始但萬能的方法

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Patches may come from other distros, mailing list postings, or cherry-picked patches from the upstream <emphasis role="strong">git</emphasis> repository with the “<emphasis role="strong">git format-patches</emphasis>” command
zh: 補丁的來源多種多樣，它可以來自其它發行版、郵件列表中的帖文或是來自上游 <emphasis role="strong">git</emphasis> 倉庫的揀選補丁，由“<emphasis role="strong">git format-patches</emphasis>”生成

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Missing the <emphasis role="strong">.pc/</emphasis> directory
zh: 不涉及 <emphasis role="strong">.pc/</emphasis> 目錄的問題

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Unmodified upstream source tree
zh: 不修改上游原始碼樹

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Manually update the <emphasis role="strong">debian/patches/series</emphasis> file
zh: 手工更新 <emphasis role="strong">debian/patches/series</emphasis> 檔案

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">dquilt</emphasis> command
zh: <emphasis role="strong">dquilt</emphasis> 命令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: See <xref linkend="quilt-setup"/>
zh: 參見 <xref linkend="quilt-setup"/>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Basic convenient method
zh: 基本的便利方案

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Proper generation of the <emphasis role="strong">.pc/</emphasis> directory data
zh: 會以合適方式生成 <emphasis role="strong">.pc/</emphasis> 目錄及其中的資料

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Modified upstream source tree
zh: 會修改上游原始碼樹

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The “<emphasis role="strong">dpkg-source --commit</emphasis>” command
zh: “<emphasis role="strong">dpkg-source --commit</emphasis>”命令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: See <xref linkend="dpkg-source-commit"/>
zh: 參見 <xref linkend="dpkg-source-commit"/>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Newer elegant method
zh: 更新、更優雅一些的方案

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The automatic patch generation by the <emphasis role="strong">dpkg-buildpackage</emphasis>
zh: 由 <emphasis role="strong">dpkg-buildpackage</emphasis> 自動生成補丁

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: See <xref linkend="alt-vcs"/>
zh: 參見 <xref linkend="alt-vcs"/>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Add <emphasis role="strong">single-debian-patch</emphasis> in the <emphasis role="strong">debian/source/local-options</emphasis> file
zh: 在 <emphasis role="strong">debian/source/local-options</emphasis> 檔案中添加 <emphasis role="strong">single-debian-patch</emphasis> 這一行

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Set the <emphasis role="strong">debian/source/local-patch-header</emphasis> file
zh: 設定 <emphasis role="strong">debian/source/local-patch-header</emphasis> 文件

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Modified upstream source tree in the Debian branch (<emphasis role="strong">master</emphasis>)
zh: 在 Debian 分支中（常見為 <emphasis role="strong">master</emphasis> 分支）存儲經過修改的上游原始碼樹

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: basic <emphasis role="strong">git</emphasis> work flow with the <emphasis role="strong">git-buildpackage</emphasis> package
zh: 配合 <emphasis role="strong">git-buildpackage</emphasis> 工具的基本 <emphasis role="strong">git</emphasis> 工作流

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Modified upstream source tree in the throw-away branch (<emphasis role="strong">patch-queue/master</emphasis>)
zh: 在可丟棄分支上儲存經過修改的上游原始碼樹（<emphasis role="strong">patch-queue/master</emphasis>）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Unmodified upstream source tree in the Debian branch (<emphasis role="strong">master</emphasis>)
zh: 在 Debian 分支中（常見為 <emphasis role="strong">master</emphasis> 分支）存儲未經修改的原始碼樹

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: more elaborate <emphasis role="strong">git</emphasis> work flow with the <emphasis role="strong">git-dpm</emphasis> package
zh: 配合 <emphasis role="strong">git-dpm</emphasis> 套件的更細緻的 <emphasis role="strong">git</emphasis> 工作流

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Modified upstream source tree in the patched branch (<emphasis role="strong">patched/</emphasis><emphasis>whatever</emphasis>)
zh: 在補丁分支中（通常命名為 <emphasis role="strong">patched/</emphasis><emphasis>隨便啥名字</emphasis>）儲存經過修改的上游原始碼樹

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Unmodified upstream source tree in the Debian branch (<emphasis role="strong">master/</emphasis><emphasis>whatever</emphasis>)
zh: 在 Debian 分支中（通常命名為 <emphasis role="strong">master/</emphasis><emphasis>隨便啥名字</emphasis>）儲存未經修改的上游原始碼樹

note: type: Content of: <book><chapter><section><simpara>
en: Wherever these patches come from, it is a good idea to tag them with a <ulink url="https://dep-team.pages.debian.net/deps/dep3/">DEP-3</ulink> compatible header.
zh: 無論這些補丁的來源如何，都建議使用兼容於 <ulink url="https://dep-team.pages.debian.net/deps/dep3/">DEP-3</ulink> 的頭部資訊對其進行標記。

note: type: Content of: <book><chapter><section><tip><simpara>
en: The <emphasis role="strong">dgit</emphasis> package offers an alternative git integration tool with the Debian package archive.
zh: <emphasis role="strong">dgit</emphasis> 套件提供了另外一套直接使用 git 集成操作 Debian 套件倉庫的工具。

note: type: Content of: <book><chapter><section><section><simpara>
en: The “<emphasis role="strong">dpkg-source -x</emphasis>” command unpacks the Debian source package.
zh: “<emphasis role="strong">dpkg-source -x</emphasis>” 命令可以對 Debian 原始碼包進行解壓縮。

note: type: Content of: <book><chapter><section><section><simpara>
en: It normally applies the patches in the <emphasis role="strong">debian/patches/</emphasis> directory to the source tree and records the patch state in the <emphasis role="strong">.pc/</emphasis> directory.
zh: 該命令通常會將 <emphasis role="strong">debian/patches/</emphasis> 目錄內的補丁應用在原始碼樹中，並將補丁狀態記錄在 <emphasis role="strong">.pc/</emphasis> 目錄中。

note: type: Content of: <book><chapter><section><section><simpara>
en: If you wish to keep the source tree unmodified (for example, for use in <xref linkend="vcs"/>), please use the <emphasis role="strong">--skip-patches</emphasis> option.
zh: 如果您想保持原始碼樹不做修改（例如，為了在 <xref linkend="vcs"/> 中繼續使用），請在命令列中使用 <emphasis role="strong">--skip-patches</emphasis> 選項。

note: type: Content of: <book><chapter><section><section><title>
en: dquilt and dpkg-source
zh: dquilt 和 dpkg-source

note: type: Content of: <book><chapter><section><section><simpara>
en: The <emphasis role="strong">quilt</emphasis> command (or its wrapped <emphasis role="strong">dquilt</emphasis> command) was needed to manage the <emphasis role="strong">-p1</emphasis> patches in the <emphasis role="strong">debian/patches/</emphasis> directory before the <emphasis role="strong">--commit</emphasis> feature was added to the <emphasis role="strong">dpkg-source</emphasis> command in 1.16.1.
zh: 在 <emphasis role="strong">dpkg-source</emphasis> 工具 1.16.1 版本之前，該工具還未提供 <emphasis role="strong">--commit</emphasis> 選項對應的功能，此時需要 <emphasis role="strong">quilt</emphasis> 命令（或者對它的封裝，<emphasis role="strong">dquilt</emphasis> 命令）來管理 <emphasis role="strong">debian/patches/</emphasis> 目錄中的 <emphasis role="strong">-p1</emphasis> 等級的補丁。

note: type: Content of: <book><chapter><section><section><simpara>
en: The patches should apply cleanly when using the <emphasis role="strong">dpkg-source</emphasis> command.  Thus you can’t just copy the patches to the new packaging of the new upstream release if there are patch offsets, etc.
zh: 在使用 <emphasis role="strong">dpkg-source</emphasis> 命令時，補丁應當能夠乾淨地進行應用。因此在補丁行數出現偏移或者其它情況出現時，您不能直接將舊補丁原封不動地複製到新版上游釋出對應打包版本的目錄中。

note: type: Content of: <book><chapter><section><section><simpara>
en: The <emphasis role="strong">dquilt</emphasis> command (see <xref linkend="quilt-setup"/>) is more forgiving.  You can normalize the patches by the <emphasis role="strong">dquilt</emphasis> command.
zh: 與此相對的是 <emphasis role="strong">dquilt</emphasis> 命令（參見 <xref linkend="quilt-setup"/>）對補丁的處理更加寬容。您可以呼叫 <emphasis role="strong">dquilt</emphasis> 命令對補丁進行正常化。

note: type: Content of: <book><chapter><section><section><simpara>
en: There is one advantage of using the <emphasis role="strong">dpkg-source</emphasis> command over the <emphasis role="strong">dquilt</emphasis> command.  While the <emphasis role="strong">dquilt</emphasis> command cannot handle modified binary files automatically, the <emphasis role="strong">dpkg-source</emphasis> command detects modified binary files and lists them in the <emphasis role="strong">debian/source/include-binaries</emphasis> file to include them in the Debian tarball.
zh: 使用 <emphasis role="strong">dpkg-source</emphasis> 命令比起使用 <emphasis role="strong">dquilt</emphasis> 命令來說存在一大優勢：<emphasis role="strong">dquilt</emphasis> 命令無法自動處理二進位制檔案出現變更的情況，而 <emphasis role="strong">dpkg-source</emphasis> 命令能夠探測出現內容變動的二進位制檔案，並將其列入 <emphasis role="strong">debian/source/include-binaries</emphasis> 檔案以便在 Debian 打包用壓縮包中將檔案囊括其中。

note: type: Content of: <book><chapter><section><simpara>
en: Some packages are signed by a GPG key.
zh: 某些套件由 GPG 金鑰進行了簽名。

note: type: Content of: <book><chapter><section><simpara>
en: For example, <ulink url="https://www.gnu.org/software/hello/">GNU hello</ulink> can be downloaded via HTTP from <ulink url="https://ftp.gnu.org/gnu/hello/">https://ftp.gnu.org/gnu/hello/</ulink> .  There are sets of files:
zh: 例如，<ulink url="https://www.gnu.org/software/hello/">GNU hello</ulink> 可使用 HTTP 協議從 <ulink url="https://ftp.gnu.org/gnu/hello/">https://ftp.gnu.org/gnu/hello/</ulink> 下載。它含有以下檔案：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">hello-</emphasis><emphasis>version</emphasis><emphasis role="strong">.tar.gz</emphasis> (upstream source)
zh: <emphasis role="strong">hello-</emphasis><emphasis>version</emphasis><emphasis role="strong">.tar.gz</emphasis>（上游原始碼）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">hello-</emphasis><emphasis>version</emphasis><emphasis role="strong">.tar.gz.sig</emphasis> (detached signature)
zh: <emphasis role="strong">hello-</emphasis><emphasis>version</emphasis><emphasis role="strong">.tar.gz.sig</emphasis>（分離的簽名）nature)

note: type: Content of: <book><chapter><section><simpara>
en: Let’s pick the latest version set.
zh: 我們現在來選擇最新的版本套裝。

note: type: Content of: <book><chapter><section><simpara>
en: If you know the public GPG key of the upstream maintainer from the mailing list, use it as the <emphasis role="strong">debian/upstream/signing-key.asc</emphasis> file.  Otherwise, use the hkp keyserver and check it via your <ulink url="https://en.wikipedia.org/wiki/Web_of_trust">web of trust</ulink>.
zh: 如果您從郵件列表獲知上游維護者所使用的 GPG 公鑰資訊，請將它作為 <emphasis role="strong">debian/upstream/signing-key.asc</emphasis> 檔案進行儲存。否則，請使用 hkp 公鑰伺服器並經由您的<ulink url="https://en.wikipedia.org/wiki/Web_of_trust">信任網</ulink>進行驗證。

note: type: Content of: <book><chapter><section><tip><simpara>
en: If your network environment blocks access to the HKP port <emphasis role="strong">11371</emphasis>, use “<emphasis role="strong">hkp://keyserver.ubuntu.com:80</emphasis>” instead.
zh: 如果您的網路環境阻擋了對 HKP <emphasis role="strong">11371</emphasis> 埠的連線，請考慮使用“<emphasis role="strong">hkp://keyserver.ubuntu.com:80</emphasis>”。

note: type: Content of: <book><chapter><section><simpara>
en: After confirming the key ID <emphasis role="strong">80EE4A00</emphasis> is a trustworthy one, download its public key into the <emphasis role="strong">debian/upstream/signing-key.asc</emphasis> file.
zh: 在確認金鑰身份 <emphasis role="strong">80EE4A00</emphasis> 值得信任之後，應當下載其公鑰並將其儲存在 <emphasis role="strong">debian/upstream/signing-key.asc</emphasis> 檔案中。

note: type: Content of: <book><chapter><section><simpara>
en: Then set the corresponding <emphasis role="strong">debian/watch</emphasis> file as follows.
zh: 之後，應相應地在 <emphasis role="strong">debian/watch</emphasis> 檔案中做如下的修改。

note: type: Content of: <book><chapter><section><simpara>
en: Now the <emphasis role="strong">uscan</emphasis> command will check the authenticity of the package using the GPG signature.
zh: 現在 <emphasis role="strong">uscan</emphasis> 命令會在掃描時自動使用 GPG 籤名驗證上游原始碼套件的真實性。

note: type: Content of: <book><chapter><section><title>
en: debian/watch and DFSG
zh: debian/watch 和 DFSG

note: type: Content of: <book><chapter><section><simpara>
en: Debian takes software freedom seriously and follows the <ulink url="https://www.debian.org/social_contract.html#guidelines">DFSG</ulink>.
zh: Debian 嚴肅地對待軟體自由，遵循 <ulink url="https://www.debian.org/social_contract.html#guidelines">Debian 自由軟體指導方針（DFSG）</ulink>。

note: type: Content of: <book><chapter><section><simpara>
en: The non-<ulink url="https://www.debian.org/social_contract.html#guidelines">DFSG</ulink> components in the upstream source tarball can be easily removed when the <emphasis role="strong">uscan</emphasis> command is used to update the Debian package.
zh: 在使用 <emphasis role="strong">uscan</emphasis> 命令來更新 Debian 打包所用程式碼時，上游原始碼套件（tarball）中不符合<ulink url="https://www.debian.org/social_contract.html#guidelines">Debian 自由軟體指導方針（DFSG）</ulink>的部分可以利用該工具簡單地進行移除。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: List the files to be removed in the <emphasis role="strong">Files-Excluded</emphasis> stanza of the <emphasis role="strong">debian/copyright</emphasis> file.
zh: 在 <emphasis role="strong">debian/copyright</emphasis> 檔案中的 <emphasis role="strong">Files-Excluded</emphasis> 一節中列出需要移除的檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: List the URL to download the upstream tarball in the <emphasis role="strong">debian/watch</emphasis> file.
zh: 在 <emphasis role="strong">debian/watch</emphasis> 檔案中列出下載上游原始碼套件（tarball）所使用的 URL。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Run the <emphasis role="strong">uscan</emphasis> command to download the new upstream tarball.
zh: 執行 <emphasis role="strong">uscan</emphasis> 命令以下載新的上游原始碼套件（tarball）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Alternatively, use the “<emphasis role="strong">gbp import-orig --uscan --pristine-tar</emphasis>” command.
zh: 作為替代方案，您也可以使用“<emphasis role="strong">gbp import-orig --uscan --pristine-tar</emphasis>”命令。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The resulting tarball has the version number with an additional suffix <emphasis role="strong">+dfsg</emphasis>.
zh: 最後得到 tarball 的版本編號會附加一個額外的字尾 <emphasis role="strong">+dfsg</emphasis>。

note: type: Content of: <book><chapter><section><title>
en: Other debian/* Files
zh: 其它 debian/* 檔案

note: type: Content of: <book><chapter><section><simpara>
en: Optional configuration files may be added under the <emphasis role="strong">debian/</emphasis> directory.  Most of them are to control <emphasis role="strong">dh_</emphasis>* commands offered by the <emphasis role="strong">debhelper</emphasis> package but there are some for <emphasis role="strong">dpkg-source</emphasis>, <emphasis role="strong">lintian</emphasis> and <emphasis role="strong">gbp</emphasis> commands.
zh: 另外也可以新增一些可選的配置檔案並放入 <emphasis role="strong">debian/</emphasis> 目錄。它們大多用於控制由 <emphasis role="strong">debhelper</emphasis> 套件提供的 <emphasis role="strong">dh_</emphasis>* 命令的行為，但也有一些檔案會影響 <emphasis role="strong">dpkg-source</emphasis>、<emphasis role="strong">lintian</emphasis> 和 <emphasis role="strong">gbp</emphasis> 這些命令。

note: type: Content of: <book><chapter><section><tip><simpara>
en: Check <emphasis role="strong">debhelper</emphasis>(7) for the latest available set of the <emphasis role="strong">dh_</emphasis>* commands.
zh: 請檢查 <emphasis role="strong">debhelper</emphasis>(7) 的內容以瞭解當前可用的 <emphasis role="strong">dh_</emphasis>* 命令列表。

note: type: Content of: <book><chapter><section><simpara>
en: These <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.</emphasis>* files provide very powerful means to set the installation path of files.  Even an upstream source without its build system can be packaged just by using these files.  See <xref linkend="nomakefile"/> as an example.
zh: 這些 <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.</emphasis>* 的檔案提供了設定檔案安裝路徑的強大功能。即使上游原始碼沒有構建系統，這個軟體依然可以利用這裡提到的這些文件來進行打包。請參考 <xref linkend="nomakefile"/> 的範例。

note: type: Content of: <book><chapter><section><simpara>
en: The "<superscript><emphasis role="strong">-x[1234]</emphasis></superscript>" superscript notation that appears in the following list indicates the minimum value for the <emphasis role="strong">debmake</emphasis> <emphasis role="strong">-x</emphasis> option that will generate the associated template file.  See <xref linkend="xoption"/> or <emphasis role="strong">debmake</emphasis>(1) for details.
zh: 下面列表中出現的“-x[1234]”上標指示了 <emphasis role="strong">debmake</emphasis> <emphasis role="strong">-x</emphasis> 選項生成對應模板檔案所需要的最小值。請參考 <emphasis role="strong">debmake</emphasis>(1) 以瞭解詳情。

note: type: Content of: <book><chapter><section><simpara>
en: Here is the alphabetical list of notable optional configuration files.
zh: 下面按照字母表順序列出一些值得注意的可選配置檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: installed as <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/control</emphasis> in <emphasis>binarypackage</emphasis>. See <xref linkend="bug"/>.
zh: 將安裝至 <emphasis>binarypackage</emphasis> 套件的 <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/control</emphasis> 位置。另請參考<xref linkend="bug"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: installed as <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/presubj</emphasis> in <emphasis>binarypackage</emphasis>. See <xref linkend="bug"/>.
zh: 將安裝至 <emphasis>binarypackage</emphasis> 套件的 <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/presubj</emphasis> 位置。另請參考<xref linkend="bug"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: installed as <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis> or <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/script</emphasis> in <emphasis>binarypackage</emphasis>. See <xref linkend="bug"/>.
zh: 將安裝至 <emphasis>binarypackage</emphasis> 套件的 <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis> or <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/script</emphasis> 位置。另請參考<xref linkend="bug"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List <literal>bash</literal> completion scripts to be installed.
zh: 列出需要安裝的 <literal>bash</literal> 補全指令碼。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: The <literal>bash-completion</literal> package is required for both build and user environments.
zh: 需要在構建環境和使用者環境內均安裝 <literal>bash-completion</literal> 套件。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_bash-completion</emphasis>(1).
zh: 另請參考<emphasis role="strong">dh_bash-completion</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List files that should be removed but are not cleaned by the <emphasis role="strong">dh_auto_clean</emphasis> command.
zh: 列出（構建前）未被 <emphasis role="strong">dh_auto_clean</emphasis> 命令清理，且需要手工清理的檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_auto_clean</emphasis>(1) and <emphasis role="strong">dh_clean</emphasis>(1).
zh: 另請參考 <emphasis role="strong">dh_auto_clean</emphasis>(1) 和 <emphasis role="strong">dh_clean</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See “COMPATIBILITY LEVELS” in <emphasis role="strong">debhelper</emphasis>(8).
zh: 另請參考 <emphasis role="strong">debhelper</emphasis>(8) 中“COMPATIBILITY LEVELS”一節。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: If the program you’re packaging requires every user to modify the configuration files in the <emphasis role="strong">/etc</emphasis> directory, there are two popular ways to arrange for them not to be conffiles, keeping the <emphasis role="strong">dpkg</emphasis> command happy and quiet.
zh: 如果您正要打包的程式要求每個使用者都對 <emphasis role="strong">/etc</emphasis> 目錄下的配置檔案進行修改，可以採取兩種常見辦法使其不作為 conffile 配置檔案出現，避免 <emphasis role="strong">dpkg</emphasis> 命令處理套件時給出不必要的處理選項。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: Create a symlink under the <emphasis role="strong">/etc</emphasis> directory pointing to a file under the <emphasis role="strong">/var</emphasis> directory generated by the maintainer scripts.
zh: 在 <emphasis role="strong">/etc</emphasis> 目錄下建立一個符號連結，指向 <emphasis role="strong">/var</emphasis> 目錄下的某些檔案；實際存在的檔案則使用維護者指令碼（maintainer script）予以建立。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: Create a file generated by the maintainer scripts under the <emphasis role="strong">/etc</emphasis> directory.
zh: 使用維護者指令碼（maintainer script）在 <emphasis role="strong">/etc</emphasis> 目錄下建立並維護配置所需的檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installdeb</emphasis>(1).
zh: 另請參考 <emphasis role="strong">dh_installdeb</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: This is the <emphasis role="strong">debconf</emphasis> <emphasis role="strong">config</emphasis> script used for asking any questions necessary to configure the package.  See <xref linkend="debconf"/>.
zh: 這是 <emphasis role="strong">debconf</emphasis> <emphasis role="strong">config</emphasis> 指令碼，用來在配置套件時向用戶詢問任何必需的問題。另請參見<xref linkend="debconf"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into the <emphasis role="strong">etc/cron/hourly/</emphasis><emphasis>binarypackage</emphasis> file in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包內的 <emphasis role="strong">etc/cron/hourly/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installcron</emphasis>(1) and <emphasis role="strong">cron</emphasis>(8).
zh: 另請參見 <emphasis role="strong">dh_installcron</emphasis>(1) 和 <emphasis role="strong">cron</emphasis>(8)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into the <emphasis role="strong">etc/cron/daily/</emphasis><emphasis>binarypackage</emphasis> file in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包內的 <emphasis role="strong">etc/cron/daily/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into the <emphasis role="strong">etc/cron/weekly/</emphasis><emphasis>binarypackage</emphasis> file in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包內的 <emphasis role="strong">etc/cron/weekly/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into the <emphasis role="strong">etc/cron/monthly/</emphasis><emphasis>binarypackage</emphasis> file in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包內的 <emphasis role="strong">etc/cron/monthly/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into the <emphasis role="strong">etc/cron.d/</emphasis><emphasis>binarypackage</emphasis> file in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包內的 <emphasis role="strong">etc/cron.d/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installcron</emphasis>(1), <emphasis role="strong">cron</emphasis>(8), and <emphasis role="strong">crontab</emphasis>(5).
zh: 參見 <emphasis role="strong">dh_installcron</emphasis>(1)、<emphasis role="strong">cron</emphasis>(8) 和 <emphasis role="strong">crontab</emphasis>(5)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: If this exists, it is installed into <emphasis role="strong">etc/default/</emphasis><emphasis>binarypackage</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 若該檔案存在，它將被安裝至 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">etc/default/</emphasis><emphasis>binarypackage</emphasis> 位置。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installinit</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_installinit</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List directories to be created in <emphasis>binarypackage</emphasis>.
zh: 列出 <emphasis>binarypackage</emphasis> 包中要建立的目錄。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installdirs</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_installdirs</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Usually, this is not needed since all <emphasis role="strong">dh_install</emphasis>* commands create required directories automatically.  Use this only when you run into trouble.
zh: 通常情況下您並不需要這麼做，因為所有的 <emphasis role="strong">dh_install</emphasis>* 命令都會自動建立所需的目錄。請僅在遇到問題時考慮使用這一工具。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed as the <emphasis role="strong">doc-base</emphasis> control file in <emphasis>binarypackage</emphasis>.
zh: 作為 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">doc-base</emphasis> 控制檔案進行安裝。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installdocs</emphasis>(1) and <ulink url="file:///usr/share/doc/doc-base/doc-base.html/index.html">Debian doc-base Manual</ulink> provided by the <emphasis role="strong">doc-base</emphasis> package.
zh: 參見 <emphasis role="strong">dh_installdocs</emphasis>(1) 和 <emphasis role="strong">doc-base</emphasis> 套件提供的 <ulink url="file:///usr/share/doc/doc-base/doc-base.html/index.html">Debian doc-base 手冊</ulink>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List documentation files to be installed in <emphasis>binarypackage</emphasis>.
zh: 列出要安裝在 <emphasis>binarypackage</emphasis> 包中的文件檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installdocs</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_installdocs</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into <emphasis role="strong">usr/lib/emacsen-common/packages/compat/</emphasis><emphasis>binarypackage</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">usr/lib/emacsen-common/packages/compat/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installemacsen</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_installemacsen</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into <emphasis role="strong">usr/lib/emacsen-common/packages/install/</emphasis><emphasis>binarypackage</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">usr/lib/emacsen-common/packages/install/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into <emphasis role="strong">usr/lib/emacsen-common/packages/remove/</emphasis><emphasis>binarypackage</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">usr/lib/emacsen-common/packages/remove/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into <emphasis role="strong">usr/lib/emacsen-common/packages/startup/</emphasis><emphasis>binarypackage</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">usr/lib/emacsen-common/packages/startup/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List example files or directories to be installed into <emphasis role="strong">usr/share/doc/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/examples/</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 列出要安裝至 <emphasis>binarypackage</emphasis> 包中 <emphasis role="strong">usr/share/doc/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/examples/</emphasis> 位置下的範例檔案或目錄。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installexamples</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_installexamples</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: If this exists, it functions as the configuration file for the <emphasis role="strong">gbp</emphasis> command.
zh: 如果該檔案存在，它將作為 <emphasis role="strong">gbp</emphasis> 命令的配置檔案發揮作用。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">gbp.conf</emphasis>(5), <emphasis role="strong">gbp</emphasis>(1), and <emphasis role="strong">git-buildpackage</emphasis>(1).
zh: 參見 <emphasis role="strong">gbp.conf</emphasis>(5)、<emphasis role="strong">gbp</emphasis>(1) 和 <emphasis role="strong">git-buildpackage</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List info files to be installed in <emphasis>binarypackage</emphasis>.
zh: 列出要安裝至 <emphasis>binarypackage</emphasis> 包中的 info 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installinfo</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_installinfo</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into <emphasis role="strong">etc/init.d/</emphasis><emphasis>binarypackage</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">etc/init.d/</emphasis><emphasis>binarypackage</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List files which should be installed but are not installed by the <emphasis role="strong">dh_auto_install</emphasis> command.
zh: 列出未被 <emphasis role="strong">dh_auto_install</emphasis> 命令安裝的其它應當安裝的檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_install</emphasis>(1) and <emphasis role="strong">dh_auto_install</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_install</emphasis>(1) 和 <emphasis role="strong">dh_auto_install</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: These are copyright file examples generated by the <emphasis role="strong">debmake</emphasis> command.  Use these as the reference for making the <emphasis role="strong">copyright</emphasis> file.
zh: 這是 <emphasis role="strong">debmake</emphasis> 命令生成的版權宣告檔案示例，請用它們作為 <emphasis role="strong">debian/copyright</emphasis> 檔案的參考。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Please make sure to erase these files.
zh: 請在最終工作成果中刪除這些檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List pairs of source and destination files to be symlinked. Each pair should be put on its own line, with the source and destination separated by whitespace.
zh: 列出要生成符號連結的原始檔和目標檔案對。每一對連結均應在單獨的一行中列出，源檔案和目標檔案之間使用空白字元分隔。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_link</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_link</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into <emphasis role="strong">usr/share/lintian/overrides/</emphasis><emphasis>binarypackage</emphasis> in the package build directory. This file is used to suppress erroneous <emphasis role="strong">lintian</emphasis> diagnostics.
zh: 安裝至套件構建目錄的 <emphasis role="strong">usr/share/lintian/overrides/</emphasis><emphasis>binarypackage</emphasis> 位置。該檔案用於消除 <emphasis role="strong">lintian</emphasis> 錯誤生成的診斷資訊。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_lintian</emphasis>(1), <emphasis role="strong">lintian</emphasis>(1) and <ulink url="https://lintian.debian.org/manual/index.html">Lintian User’s Manual</ulink>.
zh: 參見 <emphasis role="strong">dh_lintian</emphasis>(1)、<emphasis role="strong">lintian</emphasis>(1) 和 <ulink url="https://lintian.debian.org/manual/index.html">Lintian 使用者手冊</ulink>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: These are manpage template files generated by the <emphasis role="strong">debmake</emphasis> command.  Please rename these to appropriate file names and update their contents.
zh: 這些檔案是 <emphasis role="strong">debmake</emphasis> 命令生成的 man 手冊頁模板檔案。請將其重新命名為合適的檔名並更新其內容。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Debian Policy requires that each program, utility, and function should have an associated manual page included in the same package. Manual pages are written in <emphasis role="strong">nroff</emphasis>(1).
zh: Debian 的政策要求套件為其包含的每個程式、工具和函式同時提供一份相關的手冊頁。手冊頁使用 <emphasis role="strong">nroff</emphasis>(1) 語法寫成。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: If you are new to making a manpage, use <emphasis role="strong">manpage.asciidoc</emphasis> or <emphasis role="strong">manpage.1</emphasis> as the starting point.
zh: 如果您不熟悉如何編寫使用者手冊頁，請以 <emphasis role="strong">manpage.asciidoc</emphasis> 或 <emphasis role="strong">manpage.1</emphasis> 為起點。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: List man pages to be installed.
zh: 列出要安裝的 man 手冊頁。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installman</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_installman</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><term>
en: <emphasis>binarypackage</emphasis><emphasis role="strong">.menu</emphasis> (deprecated, no more installed)
zh: <emphasis>binarypackage</emphasis><emphasis role="strong">.menu</emphasis> （已過時，不再安裝）

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: <ulink url="https://bugs.debian.org/741573">tech-ctte #741573</ulink> decided "Debian should use <emphasis role="strong">.desktop</emphasis> files as appropriate".
zh: <ulink url="https://bugs.debian.org/741573">tech-ctte #741573</ulink> 決定“Debian 應該在合適的情況下使用 <emphasis role="strong">.desktop</emphasis> 檔案”。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Debian menu file installed into <emphasis role="strong">usr/share/menu/</emphasis><emphasis>binarypackage</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 安裝至 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">usr/share/menu/</emphasis><emphasis>binarypackage</emphasis> Debian 選單文件。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">menufile</emphasis>(5) for its format.  See <emphasis role="strong">dh_installmenu</emphasis>(1).
zh: 參見 <emphasis role="strong">menufile</emphasis>(5) 以瞭解其格式。另請參見 <emphasis role="strong">dh_installmenu</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into <emphasis role="strong">usr/share/doc/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/NEWS.Debian</emphasis>.
zh: 安裝至 <emphasis role="strong">usr/share/doc/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/NEWS.Debian</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installchangelogs</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_installchangelogs</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Collection of <emphasis role="strong">-p1</emphasis> patch files which are applied to the upstream source before building the source.
zh: 這是 <emphasis role="strong">-p1</emphasis> 補丁檔案的集合，它們將在使用源程式碼構建之前應用在上游原始碼上。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dpkg-source</emphasis>(1), <xref linkend="quilt-setup"/> and <xref linkend="alt-patch"/>.
zh: 參見 <emphasis role="strong">dpkg-source</emphasis>(1)、<xref linkend="quilt-setup"/> 和 <xref linkend="alt-patch"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: No patch files are generated by the <emphasis role="strong">debmake</emphasis> command.
zh: <emphasis role="strong">debmake</emphasis> 預設不會生成補丁檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: The application sequence of the <emphasis role="strong">patches/</emphasis>* patch files.
zh: <emphasis role="strong">patches/</emphasis>* 補丁檔案的應用順序。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: These maintainer scripts are installed into the <emphasis role="strong">DEBIAN</emphasis> directory.
zh: 這些維護者指令碼將安裝至套件的 <emphasis role="strong">DEBIAN</emphasis> 目錄下。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Inside the scripts, the token <emphasis role="strong">#DEBHELPER#</emphasis> is replaced with shell script snippets generated by other <emphasis role="strong">debhelper</emphasis> commands.
zh: 在這些指令碼中，<emphasis role="strong">#DEBHELPER#</emphasis> 記號將由其它 <emphasis role="strong">debhelper</emphasis> 命令進行處理，將其替換為相應的 shell 指令碼片段。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into the first binary package listed in the <emphasis role="strong">debian/control</emphasis> file as <emphasis role="strong">usr/share/doc/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/README.Debian</emphasis>.
zh: 安裝至 <emphasis role="strong">debian/control</emphasis> 檔案列出的第一個二進位制套件中的 <emphasis role="strong">usr/share/doc/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/README.Debian</emphasis> 位置。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: This file provides the information specific to the Debian package.
zh: 該檔案提供了針對該 Debian 套件的資訊。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: If this exists, it is installed into <emphasis role="strong">lib/systemd/system/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.service</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 如果該檔案存在，它將被安裝到 <emphasis>binarypackage</emphasis> 包下面的 <emphasis role="strong">lib/systemd/system/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.service</emphasis> 位置。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_systemd_enable</emphasis>(1), <emphasis role="strong">dh_systemd_start</emphasis>(1), and <emphasis role="strong">dh_installinit</emphasis>(1).
zh: 參見 <emphasis role="strong">dh_systemd_enable</emphasis>(1)、<emphasis role="strong">dh_systemd_start</emphasis>(1) 和 <emphasis role="strong">dh_installinit</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: The Debian package format.
zh: Debian 套件格式。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: Use “<emphasis role="strong">3.0 (quilt)</emphasis>” to make this non-native package (recommended)
zh: 使用“<emphasis role="strong">3.0 (quilt)</emphasis>”以製作這個非原生套件（推薦）

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: Use “<emphasis role="strong">3.0 (native)</emphasis>” to make this native package
zh: 使用“<emphasis role="strong">3.0 (native)</emphasis>”以製作這個原生套件

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See “SOURCE PACKAGE FORMATS” in <emphasis role="strong">dpkg-source</emphasis>(1).
zh: 參見 <emphasis role="strong">dpkg-source</emphasis>(1) 的“原始碼套件格式”一節。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><term>
en: <emphasis role="strong">source/lintian-overrides</emphasis> or <emphasis role="strong">source.lintian-overrides</emphasis> <superscript><emphasis role="strong">-x3</emphasis></superscript>
zh: <emphasis role="strong">source/lintian-overrides</emphasis> 或 <emphasis role="strong">source.lintian-overrides</emphasis> <superscript><emphasis role="strong">-x3</emphasis></superscript>

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: These files are not installed, but will be scanned by the <emphasis role="strong">lintian</emphasis> command to provide overrides for the source package.
zh: 這些檔案不會最終被安裝，但 <emphasis role="strong">lintian</emphasis> 會對它們進行掃描以提供原始碼套件的 override 資訊。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_lintian</emphasis>(1) and <emphasis role="strong">lintian</emphasis>(1).
zh: 另請參考 <emphasis role="strong">dh_lintian</emphasis>(1) 和 <emphasis role="strong">lintian</emphasis>(1)。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: The <emphasis role="strong">dpkg-source</emphasis> command uses this content as its options.  Notable options are:
zh: <emphasis role="strong">dpkg-source</emphasis> 命令使用此內容作為它的選項，比較重要的選項有：

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: This is not included in the generated source package and is meant to be committed to the VCS of the maintainer.
zh: 該檔案不會包含在生成的原始碼套件中，僅對維護者在版本控制系統中維護套件有意義。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See “FILE FORMATS” in <emphasis role="strong">dpkg-source</emphasis>(1).
zh: 參見 <emphasis role="strong">dpkg-source</emphasis>(1) 中的“檔案格式”一節。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Free form text that is put on top of the automatic patch generated.
zh: 自由格式的文字，將被包含在自動生成補丁的頂部。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: + See “FILE FORMATS” in <emphasis role="strong">dpkg-source</emphasis>(1).
zh: + 參見 <emphasis role="strong">dpkg-source</emphasis>(1) 的“檔案格式”一節。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: The symbols files, if present, are passed to the <emphasis role="strong">dpkg-gensymbols</emphasis> command to be processed and installed.
zh: 這些符號檔案如果存在，將交由 <emphasis role="strong">dpkg-gensymbols</emphasis> 命令進行處理和安裝。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_makeshlibs</emphasis>(1) and <xref linkend="symbols"/>..
zh: 參見 <emphasis role="strong">dh_makeshlibs</emphasis>(1) 和 <xref linkend="symbols"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: This is the <emphasis role="strong">debconf</emphasis> <emphasis role="strong">templates</emphasis> file used for asking any questions necessary to configure the package.  See <xref linkend="debconf"/>.
zh: 這是 <emphasis role="strong">debconf</emphasis> <emphasis role="strong">模板</emphasis>檔案，用於在安裝過程中向用戶詢問必需的問題以正確配置套件。請參閱 <xref linkend="debconf"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: This is the RFC822-style test meta data file defined in <ulink url="https://dep-team.pages.debian.net/deps/dep8/">DEP-8</ulink>.  See <emphasis role="strong">autopkgtest</emphasis>(1) and <xref linkend="ci"/>.
zh: 這是一個 RFC822 格式的測試元資料檔案，定義在 <ulink url="https://dep-team.pages.debian.net/deps/dep8/">DEP-8</ulink>。參見 <emphasis role="strong">autopkgtest</emphasis>(1) 和<xref linkend="ci"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: Installed into the first binary package listed in the <emphasis role="strong">debian/control</emphasis> file as <emphasis role="strong">usr/share/doc/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/TODO.Debian</emphasis>.
zh: 安裝至 <emphasis role="strong">debian/control</emphasis> 檔案列出的第一個二進位制包中的 <emphasis role="strong">usr/share/doc/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/TODO.Debian</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: If this exists, it is installed into <emphasis role="strong">usr/lib/tmpfiles.d/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.conf</emphasis> in <emphasis>binarypackage</emphasis>.
zh: 如果該檔案存在，它將被安裝至 <emphasis>binarypackage</emphasis> 包中的 <emphasis role="strong">usr/lib/tmpfiles.d/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.conf</emphasis> 檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: If this exists, it is installed into etc/init/package.conf in the package build directory. (deprecated)
zh: 如果該檔案存在，它將被安裝至套件構建目錄的 etc/init/package.conf 位置。（已棄用）

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <emphasis role="strong">dh_installinit</emphasis>(1) and <xref linkend="emptypkg"/>.
zh: 參見 <emphasis role="strong">dh_installinit</emphasis>(1) 和 <xref linkend="emptypkg"/>。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: The control file for the <emphasis role="strong">uscan</emphasis> command to download the latest upstream version.
zh: 用於下載最新上游版本的 <emphasis role="strong">uscan</emphasis> 命令的控制檔案。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: This control file may be configured to verify the authenticity of the tarball using its GPG signature (see <xref linkend="signing-key"/>).
zh: 該控制檔案也可配置以使用其 GPG 簽名自動驗證上游 tarball 的真實性（參見 <xref linkend="signing-key"/>）。

note: type: Content of: <book><chapter><section><variablelist><varlistentry><listitem><simpara>
en: See <xref linkend="dfsg"/> and <emphasis role="strong">uscan</emphasis>(1).
zh: 參見 <xref linkend="dfsg"/> 和 <emphasis role="strong">uscan</emphasis>(1)。

note: type: Content of: <book><chapter><section><simpara>
en: Here are a few reminders for the above list.
zh: 這裡給出針對上面列表中資訊的一些額外提醒。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: For a single binary package, the <emphasis>binarypackage</emphasis><emphasis role="strong">.</emphasis> part of the filename in the list may be removed.
zh: 對只生成一個二進位制包的情況，列表檔名中的 <emphasis>binarypackage</emphasis><emphasis role="strong">.</emphasis> 這一部分可以不出現。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: For a multi binary package, a configuration file missing the <emphasis>binarypackage</emphasis><emphasis role="strong">.</emphasis> part of the filename is applied to the first binary package listed in the <emphasis role="strong">debian/control</emphasis>.
zh: 對有多個二進位制包的原始碼套件，一個缺少檔名裡 <emphasis>binarypackage</emphasis><emphasis role="strong">.</emphasis> 部分的配置檔案，會被應用於 <emphasis role="strong">debian/control</emphasis> 裡列出的第一個二進位制包。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: When there are many binary packages, their configurations can be specified independently by prefixing their name to their configuration filenames such as <emphasis>package-1</emphasis><emphasis role="strong">.install</emphasis>, <emphasis>package-2</emphasis><emphasis role="strong">.install</emphasis>, etc.
zh: 在生成多個二進位制包的情況下，各個二進位制包可以分別指定配置檔案；只需在其對應配置檔案的檔名之前加上它們各自對應的包名即可，如 <emphasis>package-1</emphasis><emphasis role="strong">.install</emphasis>、<emphasis>package-2</emphasis><emphasis role="strong">.install</emphasis> 等等。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Some template configuration files may not be created by the <emphasis role="strong">debmake</emphasis> command. In such cases, you need to create them with an editor.
zh: <emphasis role="strong">debmake</emphasis> 可能沒有自動生成某些模板配置文件。如遇到這種情況，您可以使用文字編輯器手動建立遺失的檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Unusual configuration template files generated by the <emphasis role="strong">debmake</emphasis> command with an extra <emphasis role="strong">.ex</emphasis> suffix need to be activated by removing that suffix.
zh: <emphasis role="strong">debmake</emphasis> 命令生成的帶額外 <emphasis role="strong">.ex</emphasis> 字尾名的配置檔案必須在移除這個多餘字尾名後才能發揮作用。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Unused configuration template files generated by the <emphasis role="strong">debmake</emphasis> command should be removed.
zh: 您應當刪除 <emphasis role="strong">.ex</emphasis> 命令生成但對您無用的配置模板檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Copy configuration template files as needed to the filenames matching their pertinent binary package names.
zh: 請按需複製配置模板檔案以匹配其對應的二進位制包名稱以及您的需求。

note: type: Content of: <book><chapter><section><title>
en: Customization of the Debian packaging
zh: Debian 打包的定製化

note: type: Content of: <book><chapter><section><simpara>
en: Let’s recap the customization of the Debian packaging.
zh: 我們來重新歸納一下 Debian 打包定製化的相關內容。

note: type: Content of: <book><chapter><section><simpara>
en: All customization data for the Debian package resides in the <emphasis role="strong">debian/</emphasis> directory.  A simple example is given in <xref linkend="step-maintainer"/>.  Normally, this customization involves a combination of the following:
zh: 所有對 Debian 套件進行定製化的資料都存在於 <emphasis role="strong">debian/</emphasis> 目錄中。我們在<xref linkend="step-maintainer"/>這裡給出了一個簡單的例子。通常情況下，定製化會涉及以下各個專案：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The Debian package build system can be customized through the <emphasis role="strong">debian/rules</emphasis> file (see <xref linkend="customrules"/>).
zh: Debian 套件構建系統可以經由 <emphasis role="strong">debian/rules</emphasis> 檔案進行定製（參見<xref linkend="customrules"/>）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The Debian package installation path etc. can be customized through the addition of configuration files such as <emphasis>package</emphasis><emphasis role="strong">.install</emphasis> and <emphasis>package</emphasis><emphasis role="strong">.docs</emphasis> in the <emphasis role="strong">debian/</emphasis> directory for the <emphasis role="strong">dh_</emphasis>* commands from the <emphasis role="strong">debhelper</emphasis> package (see <xref linkend="debianconf"/>).
zh: 可以使用額外的配置檔案（如 <emphasis role="strong">debian/</emphasis> directory 目錄下的 <emphasis>package</emphasis><emphasis role="strong">.install</emphasis> 和 <emphasis>package</emphasis><emphasis role="strong">.docs</emphasis> 檔案）以配合來自 <emphasis role="strong">debhelper</emphasis> 套件的 <emphasis role="strong">dh_</emphasis>* 命令設定 Debian 套件檔案的安裝路徑等資訊（請參見 <xref linkend="debianconf"/>）。

note: type: Content of: <book><chapter><section><simpara>
en: When these are not sufficient to make a good Debian package, modifications to the upstream source recorded as the <emphasis role="strong">-p1</emphasis> patches in the <emphasis role="strong">debian/patches/</emphasis> directory is deployed.  These patches are applied in the sequence defined in the <emphasis role="strong">debian/patches/series</emphasis> file before building the package (see <xref linkend="patches"/>).  Simple examples are given in <xref linkend="alt-patch"/>.
zh: 如果以上提到的手段仍然不足以製作滿足要求的 Debian 套件的話，對上游原始碼的修改應當使用 <emphasis role="strong">-p1</emphasis> 補丁檔案存放在打包原始碼樹 <emphasis role="strong">debian/patches/</emphasis> 目錄下。這些補丁將按照 <emphasis role="strong">debian/patches/series</emphasis> 檔案所規定的順序在構建套件之前應用（參見 <xref linkend="patches"/>）。<xref linkend="alt-patch"/> 這裡給出了一些簡單的例子。

note: type: Content of: <book><chapter><section><simpara>
en: You should address the root cause of the Debian packaging problem by the least invasive way.  The generated package shall be more robust for future upgrades in this way.
zh: 您應當以引入最少修改的方式解決打包中出現的根本問題。所生成的套件應當考慮到未來的更新需求並有一定的健壯性。

note: type: Content of: <book><chapter><section><note><simpara>
en: Send the patch addressing the root cause to the upstream maintainer if it is useful to the upstream.
zh: 如果補丁對上游有所幫助的話，也請將解決根本問題的補丁反饋給上游作者和維護者。

note: type: Content of: <book><chapter><section><title>
en: Recording in VCS (standard)
zh: 在版本控制系統中進行記錄（標準）

note: type: Content of: <book><chapter><section><simpara>
en: Typically, <ulink url="https://en.wikipedia.org/wiki/Git">Git</ulink> is used as the <ulink url="https://en.wikipedia.org/wiki/Version_control">VCS</ulink> to record the Debian packaging activity with the following branches.
zh: 通常情況下，Debian 打包活動使用 <ulink url="https://en.wikipedia.org/wiki/Git">Git</ulink> 作為<ulink url="https://en.wikipedia.org/wiki/Version_control">版本控制系統（VCS）</ulink>進行記錄；通常會用到下列的分支。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">master</emphasis> branch
zh: <emphasis role="strong">master</emphasis> 分支

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Record the source tree used for the Debian packaging.
zh: 記錄用於 Debian 打包的原始碼樹。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The upstream portion of the source tree is recorded unmodified.
zh: 原始碼樹的上游部分將照原樣記錄，不做修改。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The upstream modifications for the Debian packaging are recorded in the <emphasis role="strong">debian/patches/</emphasis> directory as the <emphasis role="strong">-p1</emphasis> patches.
zh: Debian 打包中需要對上游原始碼所作的修改記錄在 <emphasis role="strong">debian/patches/</emphasis> 目錄中，以 <emphasis role="strong">-p1</emphasis> 等級的補丁形式存在。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">upstream</emphasis> branch
zh: <emphasis role="strong">upstream</emphasis> 分支

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Record the upstream source tree untarred from the released upstream tarball.
zh: 記錄從上游釋出的 tarball（原始碼壓縮檔案）解壓縮所得到的原始碼樹。

note: type: Content of: <book><chapter><section><tip><simpara>
en: It’s a good idea to add to the <emphasis role="strong">.gitignore</emphasis> file the listing <emphasis role="strong">.pc</emphasis>.
zh: 新增一個 <emphasis role="strong">.gitignore</emphasis> 檔案並將 <emphasis role="strong">.pc</emphasis> 檔案列入其中也是一個好主意。

note: type: Content of: <book><chapter><section><tip><simpara>
en: Add <emphasis role="strong">unapply-patches</emphasis> and <emphasis role="strong">abort-on-upstream-changes</emphasis> lines to the <emphasis role="strong">debian/source/local-options</emphasis> file to keep the upstream portion unmodified.
zh: 可以在 <emphasis role="strong">debian/source/local-options</emphasis> 檔案中新增 <emphasis role="strong">unapply-patches</emphasis> 和 <emphasis role="strong">abort-on-upstream-changes</emphasis> 這兩行以保持上游原始碼處於未修改狀態。

note: type: Content of: <book><chapter><section><tip><simpara>
en: You may also track the upstream VCS data with a branch different from the <emphasis role="strong">upstream</emphasis> branch to ease cherry-picking of patches.
zh: 您也可以使用除 <emphasis role="strong">upstream</emphasis> 分支以外其它名稱的分支追蹤上游版本控制資料以方便揀選補丁。

note: type: Content of: <book><chapter><section><title>
en: Recording in VCS (alternative)
zh: 在版本控制系統中進行記錄（備選方案）

note: type: Content of: <book><chapter><section><simpara>
en: You may not wish to keep up with creating the <emphasis role="strong">-p1</emphasis> patch files for all upstream changes needed.  You can record the Debian packaging activity with the following branches.
zh: 您也可以選擇不建立 <emphasis role="strong">-p1</emphasis> 等級的補丁。這時，您可以使用下列分支來記錄 Debian 打包活動。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The upstream portion of the source tree is recorded with modifications for the Debian packaging.
zh: 原始碼樹的上游部分在應用了為 Debian 打包所作的修改之後進行記錄。

note: type: Content of: <book><chapter><section><simpara>
en: Adding a few extra files in the <emphasis role="strong">debian/</emphasis> directory enables you to do this.
zh: 如下在 <emphasis role="strong">debian/</emphasis> 目錄下額外新增一些檔案即可達到目的。

note: type: Content of: <book><chapter><section><simpara>
en: Let the <emphasis role="strong">dpkg-source</emphasis> command invoked by the Debian package build process (<emphasis role="strong">dpkg-buildpackage</emphasis>, <emphasis role="strong">debuild</emphasis>, …) generate the <emphasis role="strong">-p1</emphasis> patch file <emphasis role="strong">debian/patches/debian-changes</emphasis> automatically.
zh: 如此可讓 Debian 打包過程（<emphasis role="strong">dpkg-buildpackage</emphasis>、<emphasis role="strong">debuild</emphasis> 等）所呼叫的 <emphasis role="strong">dpkg-source</emphasis> 命令自動生成一個 <emphasis role="strong">-p1</emphasis> 等級的補丁檔案 <emphasis role="strong">debian/patches/debian-changes</emphasis>。

note: type: Content of: <book><chapter><section><tip><simpara>
en: This approach can be adopted for any VCS tools.  Since this approach merges all changes into a merged patch, it is desirable to keep the VCS data publicly accessible.
zh: 這種做法可以應用在任何版本控制工具中。這麼做會把所有修改合併到同一個補丁檔案中而丟失其開發歷史，因此請務必保持版本控制系統的資料公開可見。

note: type: Content of: <book><chapter><section><tip><simpara>
en: The <emphasis role="strong">debian/source/local-options</emphasis> and <emphasis role="strong">debian/source/local-patch-header</emphasis> files are meant to be recorded in the VCS.  These aren’t included in the Debian source package.
zh: <emphasis role="strong">debian/source/local-options</emphasis> 和 <emphasis role="strong">debian/source/local-patch-header</emphasis> 檔案只用於在版本控制系統中記錄資訊。它們不應包含在 Debian 原始碼套件中。

note: type: Content of: <book><chapter><section><title>
en: Building package without extraneous contents
zh: 構建套件時排除不必要的內容

note: type: Content of: <book><chapter><section><simpara>
en: There are a few cases which cause the inclusion of undesirable contents in the generated Debian source package.
zh: 在某些情況下，直接使用自動生成的 Debian 原始碼套件會引入不必要的一些內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The upstream source tree may be placed under the version control system.  When the package is rebuilt from this source tree, the generated Debian source package contains extraneous contents from the version control system files.
zh: 上游原始碼樹可能由某個版本控制系統進行管理。直接從這個原始碼樹進行構建時，所生成的 Debian 原始碼套件會包含來自版本控制系統的多餘檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The upstream source tree may contain some auto-generated files.  When the package is rebuilt from this source tree, the generated Debian source package contains extraneous contents from the auto-generated files.
zh: 上游原始碼樹可能包含了一些自動生成的檔案。當從這個原始碼樹重新構建套件時，所生成的 Debian 原始碼套件會包含這些自動生成的不必要的檔案。

note: type: Content of: <book><chapter><section><simpara>
en: Normally, the <emphasis role="strong">-i</emphasis> and <emphasis role="strong">-I</emphasis> options set in <xref linkend="devscripts-setup"/> for the <emphasis role="strong">dpkg-source</emphasis> command should avoid these.  Here, the <emphasis role="strong">-i</emphasis> option is aimed at the non-native package while the <emphasis role="strong">-I</emphasis> is aimed at the native package.  See <emphasis role="strong">dpkg-source</emphasis>(1) and the “<emphasis role="strong">dpkg-source --help</emphasis>” output.
zh: 通常情況下，<xref linkend="devscripts-setup"/> 中設定的用於 <emphasis role="strong">dpkg-source</emphasis> 命令的 <emphasis role="strong">-i</emphasis> 和 <emphasis role="strong">-I</emphasis> 選項可以避免這些問題。這裡 <emphasis role="strong">-i</emphasis> 針對非原生套件而 <emphasis role="strong">-I</emphasis> 則針對原生套件。請參見 <emphasis role="strong">dpkg-source</emphasis>(1) 和“<emphasis role="strong">dpkg-source --help</emphasis>”的輸出。

note: type: Content of: <book><chapter><section><simpara>
en: There are several methods to avoid inclusion of undesirable contents.
zh: 以下幾種方法均可避免引入不必要的內容。

note: type: Content of: <book><chapter><section><section><title>
en: Fix by debian/rules clean
zh: 使用 debian/rules clean 進行修復

note: type: Content of: <book><chapter><section><section><simpara>
en: The problem of extraneous contents can be fixed by removing such files in the “<emphasis role="strong">debian/rules clean</emphasis>” target.  This is also useful for auto-generated files.
zh: 含有多餘檔案的問題可以使用“<emphasis role="strong">debian/rules clean</emphasis>”這個 Makefile 目標的呼叫來解決，只需在該目標內刪除檔案即可。它也能處理自動生成的檔案。

note: type: Content of: <book><chapter><section><section><note><simpara>
en: The “<emphasis role="strong">debian/rules clean</emphasis>” target is called before the “<emphasis role="strong">dpkg-source --build</emphasis>” command by the <emphasis role="strong">dpkg-buildpackage</emphasis> command and the “<emphasis role="strong">dpkg-source --build</emphasis>” command ignores removed files.
zh: 執行 <emphasis role="strong">dpkg-buildpackage</emphasis> 命令時，它會在“<emphasis role="strong">dpkg-source --build</emphasis>”命令之前被調用“<emphasis role="strong">debian/rules clean</emphasis>”目標，而“<emphasis role="strong">dpkg-source --build</emphasis>”命令會忽略被刪除的檔案。

note: type: Content of: <book><chapter><section><section><title>
en: Fix using VCS
zh: 使用版本控制系統修復

note: type: Content of: <book><chapter><section><section><simpara>
en: The problem of extraneous contents can be fixed by restoring the source tree by committing the source tree to the VCS before the first build.
zh: 含有多餘檔案的問題還可以使用版本控制系統修復；具體來說，可以在首次構建之前將原始碼樹提交到版本控制系統中。

note: type: Content of: <book><chapter><section><section><simpara>
en: You can restore the source tree before the second package build.  For example:
zh: 您可以在第二次構建套件之前恢復最初的原始碼樹。例如：

note: type: Content of: <book><chapter><section><section><simpara>
en: This works because the <emphasis role="strong">dpkg-source</emphasis> command ignores the contents of the typical VCS files in the source tree with the <emphasis role="strong">DEBUILD_DPKG_BUILDPACKAGE_OPTS</emphasis> setting in <xref linkend="devscripts-setup"/>.
zh: 這裡工作的原理是 <emphasis role="strong">dpkg-source</emphasis> 命令會忽略原始碼樹中典型的版本控制系統相關的檔案，相關的設定可以在 <xref linkend="devscripts-setup"/> 的 <emphasis role="strong">DEBUILD_DPKG_BUILDPACKAGE_OPTS</emphasis> 設定中找到。

note: type: Content of: <book><chapter><section><section><tip><simpara>
en: If the source tree is not managed by a VCS, you should run “<emphasis role="strong">git init; git add -A .; git commit</emphasis>” before the first build.
zh: 如果原始碼樹未受版本控制系統管理，您可以在第一次構建之前執行“<emphasis role="strong">git init; git add -A .; git commit</emphasis>”來初始化。

note: type: Content of: <book><chapter><section><section><title>
en: Fix by extend-diff-ignore
zh: 使用 extend-diff-ignore 修復

note: type: Content of: <book><chapter><section><section><simpara>
en: This is for a non-native package.
zh: 這種做法僅適合非原生套件。

note: type: Content of: <book><chapter><section><section><simpara>
en: The problem of extraneous diffs can be fixed by ignoring changes made to parts of the source tree by adding the “<emphasis role="strong">extend-diff-ignore=…</emphasis>” line in the <emphasis role="strong">debian/source/options</emphasis> file.
zh: 含有多餘檔案的問題可以使用在 <emphasis role="strong">debian/source/options</emphasis> 檔案中新增忽略資訊的方式解決，令編譯系統忽略多餘的檔案；具體配置語法為新增 <emphasis role="strong">extend-diff-ignore=…</emphasis>”一行內容。

note: type: Content of: <book><chapter><section><section><simpara>
en: For excluding the <emphasis role="strong">config.sub</emphasis>, <emphasis role="strong">config.guess</emphasis> and <emphasis role="strong">Makefile</emphasis> files:
zh: 如需排除 <emphasis role="strong">config.sub</emphasis>、<emphasis role="strong">config.guess</emphasis> 和 <emphasis role="strong">Makefile</emphasis> 檔案：

note: type: Content of: <book><chapter><section><section><note><simpara>
en: This approach always works, even when you can’t remove the file. So it saves you having to make a backup of the unmodified file just to be able to restore it before the next build.
zh: 即使您無法刪除檔案，這種做法總可以正常工作。您無需在每次構建之前手動刪除檔案並手動進行恢復。

note: type: Content of: <book><chapter><section><section><tip><simpara>
en: If the <emphasis role="strong">debian/source/local-options</emphasis> file is used instead, you can hide this setting from the generated source package.  This may be useful when the local non-standard VCS files interfere with your packaging.
zh: 如果您轉而使用 <emphasis role="strong">debian/source/local-options</emphasis> 檔案，您可以在生成的原始碼套件中隱藏該項設定。這種做法在本地非標準版本控制系統和您的打包工作有衝突時可能有用。

note: type: Content of: <book><chapter><section><section><title>
en: Fix by tar-ignore
zh: 使用 tar-ignore 修復

note: type: Content of: <book><chapter><section><section><simpara>
en: This is for a native package.
zh: 這個方法只適用於原生套件。

note: type: Content of: <book><chapter><section><section><simpara>
en: You can exclude some files in the source tree from the generated tarball by tweaking the file glob by adding the “<emphasis role="strong">tar-ignore=…</emphasis>” lines in the <emphasis role="strong">debian/source/options</emphasis> or <emphasis role="strong">debian/source/local-options</emphasis> files.
zh: 您可以使用這種做法在生成的原始碼套件中排除某些檔案；只需在 <emphasis role="strong">debian/source/options</emphasis> 檔案或者 <emphasis role="strong">debian/source/local-options</emphasis> 檔案中新增含有萬用字元的 “<emphasis role="strong">tar-ignore=…</emphasis>”一行內容即可。

note: type: Content of: <book><chapter><section><section><note><simpara>
en: If, for example, the source package of a native package needs files with the file extension <emphasis role="strong">.o</emphasis> as a part of the test data, the setting in <xref linkend="devscripts-setup"/> is too aggressive.  You can work around this problem by dropping the <emphasis role="strong">-I</emphasis> option for <emphasis role="strong">DEBUILD_DPKG_BUILDPACKAGE_OPTS</emphasis> in <xref linkend="devscripts-setup"/> while adding the “<emphasis role="strong">tar-ignore=…</emphasis>” lines in the <emphasis role="strong">debian/source/local-options</emphasis> file for each package.
zh: 例如，如果您的原生套件的原始碼套件使用了一些具有 <emphasis role="strong">.o</emphasis> 副檔名的檔案作為測試資料的話，<xref linkend="devscripts-setup"/> 的預設設定就過於激進了，這些檔案會被當作多餘的檔案預設自動排除。如需解決這個問題，您可以在 <xref linkend="devscripts-setup"/> 中的 <emphasis role="strong">DEBUILD_DPKG_BUILDPACKAGE_OPTS</emphasis> 引數中移除 <emphasis role="strong">-I</emphasis> 選項，同時在每個套件的 <emphasis role="strong">debian/source/local-options</emphasis> 檔案中新增 “<emphasis role="strong">tar-ignore=…</emphasis>”的配置行。

note: type: Content of: <book><chapter><section><title>
en: Upstream build systems
zh: 上游構建系統

note: type: Content of: <book><chapter><section><simpara>
en: Upstream build systems are designed to go through several steps to install generated binary files to the system from the source distribution.
zh: 上游的構建系統設計為經過數個步驟以從原始碼發行檔案得到並在系統中安裝所生成的二進位制檔案。

note: type: Content of: <book><chapter><section><tip><simpara>
en: Before attempting to make a Debian package, you should become familiar with the upstream build system of the upstream source code and try to build it.
zh: 在嘗試製作 Debian 套件之前，您應當熟悉瞭解上游原始碼所使用的構建系統並嘗試構建軟體。

note: type: Content of: <book><chapter><section><section><simpara>
en: Autotools (<emphasis role="strong">autoconf</emphasis> + <emphasis role="strong">automake</emphasis>) has 4 steps.
zh: 使用 Autotools（<emphasis role="strong">autoconf</emphasis> + <emphasis role="strong">automake</emphasis>）包括四個步驟。

note: type: Content of: <book><chapter><section><section><orderedlist><listitem><simpara>
en: set up the build system (“<emphasis role="strong">vim configure.ac Makefile.am</emphasis>” and “<emphasis role="strong">autoreconf -ivf</emphasis>”)
zh: 設定構建系統（“<emphasis role="strong">vim configure.ac Makefile.am</emphasis>”和“<emphasis role="strong">autoreconf -ivf</emphasis>”）

note: type: Content of: <book><chapter><section><section><orderedlist><listitem><simpara>
en: configure the build system (“<emphasis role="strong">./configure</emphasis>”)
zh: 配置構建系統（“<emphasis role="strong">./configure</emphasis>”）

note: type: Content of: <book><chapter><section><section><orderedlist><listitem><simpara>
en: build the source tree (“<emphasis role="strong">make</emphasis>”)
zh: 構建原始碼樹（“<emphasis role="strong">make</emphasis>”）

note: type: Content of: <book><chapter><section><section><orderedlist><listitem><simpara>
en: install the binary files (“<emphasis role="strong">make install</emphasis>”)
zh: 安裝二進位制檔案（“<emphasis role="strong">make install</emphasis>”）

note: type: Content of: <book><chapter><section><section><simpara>
en: The upstream maintainer usually performs step 1 and builds the upstream tarball for distribution using the “<emphasis role="strong">make dist</emphasis>” command.  (The generated tarball contains not only the pristine upstream VCS contents but also other generated files.)
zh: 第一步通常由上游維護者完成並使用“<emphasis role="strong">make dist</emphasis>”命令生成上游原始碼壓縮包（tarball）。（所生成的原始碼壓縮包不僅含有原始的版本控制系統中的檔案，也含有其它生成的檔案。）

note: type: Content of: <book><chapter><section><section><simpara>
en: The package maintainer needs to take care of steps 2 to 4 at least.  This is realized by the “<emphasis role="strong">dh $@ --with autotools-dev</emphasis>” command used in the <emphasis role="strong">debian/rules</emphasis> file.
zh: 套件維護者至少要處理第二步到第四步的工作。可以在 <emphasis role="strong">debian/rules</emphasis> 檔案中使用“<emphasis role="strong">dh $@ --with autotools-dev</emphasis>”的命令以自動處理這些步驟。

note: type: Content of: <book><chapter><section><section><simpara>
en: The package maintainer may wish to take care all steps 1 to 4.  This is realized by the “<emphasis role="strong">dh $@ --with autoreconf</emphasis>” command used in the <emphasis role="strong">debian/rules</emphasis> file.  This rebuilds all auto-generated files to the latest version and provides better support for porting to the newer architectures.
zh: 套件維護者也可以想要處理第一步到第四步所有的工作。這時，可以在 <emphasis role="strong">debian/rules</emphasis> 檔案中使用“<emphasis role="strong">dh $@ --with autoreconf</emphasis>”命令。這樣會將所有自動生成的檔案更新到最新的版本，通常可以提供對新架構的更好支援。

note: type: Content of: <book><chapter><section><section><simpara>
en: For <emphasis role="strong">compat</emphasis> level <emphasis role="strong">10</emphasis> or newer, the simple “<emphasis role="strong">dh $@</emphasis>” command without “<emphasis role="strong">--with autoreconf</emphasis>” option can take care all steps 1 to 4, too.
zh: 對於使用 <emphasis role="strong">compat</emphasis> level（相容等級）<emphasis role="strong">10</emphasis> 或更高等級的原始碼套件，使用最簡單的“<emphasis role="strong">dh $@</emphasis>”而不帶“<emphasis role="strong">--with autoreconf</emphasis>”選項已可自動處理上述第一步到第四步全部內容。

note: type: Content of: <book><chapter><section><section><simpara>
en: If you wish to learn more on Autotools, please see:
zh: 如果您想進一步學習 Autotools，請參考：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.gnu.org/software/automake/manual/index.html">GNU Automake documentation</ulink>
zh: <ulink url="https://www.gnu.org/software/automake/manual/index.html">GNU Automake 文件</ulink>

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.gnu.org/software/autoconf/manual/index.html">GNU Autoconf documentation</ulink>
zh: <ulink url="https://www.gnu.org/software/autoconf/manual/index.html">GNU Autoconf 文件</ulink>

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.lrde.epita.fr/~adl/autotools.html">Autotools Tutorial</ulink>
zh: <ulink url="https://www.lrde.epita.fr/~adl/autotools.html">Autotools 教材</ulink>

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.dwheeler.com/autotools/introduction-autotools.pdf">Introduction to the autotools (autoconf, automake, and libtool)</ulink>
zh: <ulink url="https://www.dwheeler.com/autotools/introduction-autotools.pdf">對 autotools 的介紹（autoconf、automake 和 libtool）</ulink>

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <ulink url="https://autotools.io/index.html">Autotools Mythbuster</ulink>
zh: <ulink url="https://autotools.io/index.html">Autotools 流言終結者</ulink>

note: type: Content of: <book><chapter><section><section><simpara>
en: CMake has 4 steps.
zh: 使用 CMake 通常也包含四個步驟。

note: type: Content of: <book><chapter><section><section><orderedlist><listitem><simpara>
en: set up the build system (“<emphasis role="strong">vim CMakeLists.txt config.h.in</emphasis>”)
zh: 設定構建系統（“<emphasis role="strong">vim CMakeLists.txt config.h.in</emphasis>”）

note: type: Content of: <book><chapter><section><section><orderedlist><listitem><simpara>
en: configure the build system (“<emphasis role="strong">cmake</emphasis>”)
zh: 配置構建系統（“<emphasis role="strong">cmake</emphasis>”）

note: type: Content of: <book><chapter><section><section><simpara>
en: The upstream tarball contains no auto-generated files and is generated by the <emphasis role="strong">tar</emphasis> command after step 1.
zh: 上游原始碼套件（tarball）不包含自動生成的檔案，通常是在第一步之後直接由 <emphasis role="strong">tar</emphasis> 命令打包生成。

note: type: Content of: <book><chapter><section><section><simpara>
en: The package maintainer needs to take care of steps 2 to 4.
zh: 套件維護者需要處理第二步到第四步的工作。

note: type: Content of: <book><chapter><section><section><simpara>
en: If you wish to learn more on the CMake, please see:
zh: 如果您想進一步學習 CMake，請參考：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: <ulink url="https://cmake.org/cmake-tutorial/">CMake tutorial</ulink>
zh: <ulink url="https://cmake.org/cmake-tutorial/">CMake 教材</ulink>

note: type: Content of: <book><chapter><section><section><simpara>
en: Python distutils has 3 steps.
zh: 使用 Python distutils 通常包含三個步驟。

note: type: Content of: <book><chapter><section><section><orderedlist><listitem><simpara>
en: set up and configure the build system (“<emphasis role="strong">vim setup.py</emphasis>”)
zh: 設定並配置構建系統（“<emphasis role="strong">vim setup.py</emphasis>”）

note: type: Content of: <book><chapter><section><title>
en: Debugging information
zh: 除錯資訊

note: type: Content of: <book><chapter><section><simpara>
en: See
zh: 參見

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html#bpp-dbg">6.7.9. Best practices for debug packages</ulink> of the “Debian Developer’s Reference”.
zh: 《Debian 開發者參考》中的 <ulink url="https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html#bpp-dbg">6.7.9. 除錯套件的最佳實踐</ulink>。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://sourceware.org/gdb/current/onlinedocs/gdb/Separate-Debug-Files.html#Separate-Debug-Files">18.2 Debugging Information in Separate Files</ulink> of the “Debugging with gdb”
zh: “Debugging with gdb”中的 <ulink url="https://sourceware.org/gdb/current/onlinedocs/gdb/Separate-Debug-Files.html#Separate-Debug-Files">18.2 單獨檔案中的除錯資訊</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian wiki <ulink url="https://wiki.debian.org/DebugPackage">DebugPackage</ulink>
zh: Debian 維基 <ulink url="https://wiki.debian.org/DebugPackage">除錯套件</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian wiki <ulink url="https://wiki.debian.org/AutomaticDebugPackages">AutomaticDebugPackages</ulink>
zh: Debian 維基 <ulink url="https://wiki.debian.org/AutomaticDebugPackages">自動除錯套件</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian debian-devel post: <ulink url="https://lists.debian.org/debian-devel/2015/08/msg00443.html">Status on automatic debug packages</ulink> (2015-08-15)
zh: Debian debian-devel 列表釋出的郵件：<ulink url="https://lists.debian.org/debian-devel/2015/08/msg00443.html">自動除錯套件狀態</ulink> (2015-08-15)

note: type: Content of: <book><chapter><section><section><title>
en: New -dbgsym package (Stretch 9.0 and after)
zh: 新的 -dbgsym 套件（Stretch 9.0 或更新）

note: type: Content of: <book><chapter><section><section><simpara>
en: The debugging information is automatically packaged separately as the debug package using the <emphasis role="strong">dh_strip</emphasis> command with its default behavior.  The name of such a debug package normally has the <emphasis role="strong">-dbgsym</emphasis> suffix.
zh: 除錯資訊由 <emphasis role="strong">dh_strip</emphasis> 命令的預設行為自動打包並進行移除。所分離得到的除錯套件名具有 <emphasis role="strong">-dbgsym</emphasis> 的字尾。

note: type: Content of: <book><chapter><section><section><simpara>
en: If there were no <emphasis role="strong">-dbg</emphasis> packages defined in the <emphasis role="strong">debian/control</emphasis> file, no special care is needed for updating the package after the Stretch 9.0 release.
zh: 在 Stretch 9.0 的釋出之後，如果在 <emphasis role="strong">debian/control</emphasis> 檔案中從未定義過任何 <emphasis role="strong">-dbg</emphasis> 軟體包，則不需任何特殊配置。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debian/rules</emphasis> file shouldn’t explicitly contain <emphasis role="strong">dh_strip</emphasis>.
zh: <emphasis role="strong">debian/rules</emphasis> 檔案不應顯性包括 <emphasis role="strong">dh_strip</emphasis> 。

note: type: Content of: <book><chapter><section><section><simpara>
en: If there were <emphasis role="strong">-dbg</emphasis> packages defined in the <emphasis role="strong">debian/control</emphasis> file, following care is needed for updating the old package after the Stretch 9.0 release.
zh: 如果在 <emphasis role="strong">debian/control</emphasis> 檔案中曾經定義過 <emphasis role="strong">-dbg</emphasis> 套件，在 Stretch 9.0 釋出之後對舊套件更新需要進行額外的處理。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Drop definition entries of such <emphasis role="strong">-dbg</emphasis> packages in the <emphasis role="strong">debian/control</emphasis> file.
zh: 在 <emphasis role="strong">debian/control</emphasis> 檔案中刪除 <emphasis role="strong">-dbg</emphasis> 套件定義的部分。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Replace “<emphasis role="strong">dh_strip --dbg-package=</emphasis><emphasis>package”</emphasis> with “<emphasis role="strong">dh_strip --dbgsym-migration=</emphasis><emphasis>package”</emphasis> in the <emphasis role="strong">debian/rules</emphasis> file to avoid file conflicts with the (now obsolete) <emphasis role="strong">-dbg</emphasis> package.  See <emphasis role="strong">dh_strip</emphasis>(1).
zh: 將 <emphasis role="strong">debian/rules</emphasis> 檔案中“<emphasis role="strong">dh_strip --dbg-package=</emphasis><emphasis>package”</emphasis>這部分替換為“<emphasis role="strong">dh_strip --dbgsym-migration=</emphasis><emphasis>package”</emphasis>以避免自動產生的除錯套件與（現在過時的）<emphasis role="strong">-dbg</emphasis> 檔案產生衝突。參見 <emphasis role="strong">dh_strip</emphasis>(1)。

note: type: Content of: <book><chapter><section><title>
en: Library package
zh: 程式庫套件

note: type: Content of: <book><chapter><section><simpara>
en: Packaging library software requires you to perform much more work than usual.  Here are some reminders for packaging library software:
zh: 打包軟體程式庫需要您投入更多的工作。下面有一些打包軟體程式庫的提醒和建議：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The library binary package must be named as in <xref linkend="libnames"/>.
zh: 程式庫二進位制套件必須根據 <xref linkend="libnames"/> 進行命名。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian ships shared libraries such as <emphasis role="strong">/usr/lib/&lt;triplet&gt;/lib</emphasis><emphasis>foo-0.1</emphasis><emphasis role="strong">.so.</emphasis><emphasis>1.0.0</emphasis> (see <xref linkend="multiarch"/>).
zh: Debian 按照 <emphasis role="strong">/usr/lib/&lt;triplet&gt;/lib</emphasis><emphasis>foo-0.1</emphasis><emphasis role="strong">.so.</emphasis><emphasis>1.0.0</emphasis> 這樣的路徑提供共享連結程式庫（參見 <xref linkend="multiarch"/>）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian encourages using versioned symbols in the shared library (see <xref linkend="symbols"/>).
zh: Debian 鼓勵在共享程式庫中使用帶版本的符號（見 <xref linkend="symbols"/>）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian doesn’t ship <emphasis role="strong">*.la</emphasis> libtool library archive files.
zh: Debian 不提供 <emphasis role="strong">*.la</emphasis> libtool 程式庫歸檔檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian discourages using and shipping <emphasis role="strong">*.a</emphasis> static library files.
zh: Debian 不推薦使用、提供 <emphasis role="strong">*.a</emphasis> 靜態程式庫檔案。

note: type: Content of: <book><chapter><section><simpara>
en: Before packaging shared library software, see:
zh: 在打包共享程式庫軟體之前，請查閱：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html#bpp-libraries">6.7.2. Libraries</ulink> of the “Debian Developer’s Reference”
zh: 《Debian 開發者參考》中的 <ulink url="https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html#bpp-libraries">6.7.2. 軟體程式庫</ulink>

note: type: Content of: <book><chapter><section><simpara>
en: For the historic background study, see:
zh: 如需研究其歷史背景，請參見：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara><footnote><simpara>
en: This document was written before the introduction of the <emphasis role="strong">symbols</emphasis> file.
zh: 該文件是在 <emphasis role="strong">symbols</emphasis> 檔案被引入之前寫成的。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://debconf4.debconf.org/talks/dependency-hell/img1.html">Escaping the Dependency Hell</ulink> <placeholder type="footnote" id="0"/>
zh: <ulink url="https://debconf4.debconf.org/talks/dependency-hell/img1.html">逃離依賴地獄</ulink> <placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This encourages having versioned symbols in the shared library.
zh: 該文件鼓勵在共享程式庫中使用帶版本的符號。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara><footnote><simpara>
en: The strong preference is to use the SONAME versioned <emphasis role="strong">-dev</emphasis> package names over the single <emphasis role="strong">-dev</emphasis> package name in <ulink url="https://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html#devpkg">Chapter 6. Development (-DEV) packages</ulink>, which does not seem to be shared by the former ftp-master (Steve Langasek). This document was written before the introduction of the <emphasis role="strong">multiarch</emphasis> system and the <emphasis role="strong">symbols</emphasis> file.
zh: 在<ulink url="https://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html#devpkg">第六章 - 開發（-DEV）套件</ulink>中，存在強烈的使用含有 SONAME 版本號的 <emphasis role="strong">-dev</emphasis> 套件名而非僅使用 <emphasis role="strong">-dev</emphasis> 作為名稱的偏好，但前 ftp-master 成員（Steve Langasek）對此有不同意見。請注意該文件在 <emphasis role="strong">multiarch</emphasis> 系統和 <emphasis role="strong">symbols</emphasis> 引入之前寫成，可能有一定程度的過時。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html">Debian Library Packaging guide</ulink> <placeholder type="footnote" id="0"/>
zh: <ulink url="https://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html">Debian 程式庫打包指南</ulink> <placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Please read the discussion thread following <ulink url="https://lists.debian.org/debian-devel/2004/06/msg00069.html">its announcement</ulink>, too.
zh: 也請閱讀<ulink url="https://lists.debian.org/debian-devel/2004/06/msg00069.html">這裡的公告</ulink>後面跟隨的討論串。

note: type: Content of: <book><chapter><section><section><title>
en: Library symbols
zh: 程式庫符號

note: type: Content of: <book><chapter><section><section><simpara>
en: The symbols support in <emphasis role="strong">dpkg</emphasis> introduced in Debian <emphasis role="strong">lenny</emphasis> (5.0, May 2009) helps us to manage the backward ABI compatibility of the library package with the same package name.  The <emphasis role="strong">DEBIAN/symbols</emphasis> file in the binary package provides the minimal version associated with each symbol.
zh: Debian <emphasis role="strong">lenny</emphasis>（5.0，2009年5月）中引入的 <emphasis role="strong">dpkg</emphasis> 符號支援可以幫助我們管理同一共享鏈接程式庫套件的向後 ABI 相容性（backward ABI compatibility）。二進位制套件中的 <emphasis role="strong">DEBIAN/symbols</emphasis> 檔案提供了每個符號及其對應的最小版本號。

note: type: Content of: <book><chapter><section><section><simpara>
en: An oversimplified method for the library packaging is as follows.
zh: 一個極其簡化的軟體程式庫打包流程大概如下所示。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Extract the old <emphasis role="strong">DEBIAN/symbols</emphasis> file of the immediate previous binary package with the “<emphasis role="strong">dpkg-deb -e</emphasis>” command.
zh: 從前一個二進位制套件中使用“<emphasis role="strong">dpkg-deb -e</emphasis>”命令解壓縮得到舊有的 <emphasis role="strong">DEBIAN/symbols</emphasis> 檔案。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Alternatively, the <emphasis role="strong">mc</emphasis> command may be used to extract the <emphasis role="strong">DEBIAN/symbols</emphasis> file.
zh: 或者，<emphasis role="strong">mc</emphasis> 命令也可以用來解壓得到 <emphasis role="strong">DEBIAN/symbols</emphasis> 檔案。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Copy it to the <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.symbols</emphasis> file.
zh: 將其複製為 <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.symbols</emphasis> 檔案。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: If this is the first package, use an empty content file instead.
zh: 如果這是第一次打包的話，可以只建立一個空檔案。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Build the binary package.
zh: 構建二進位制套件。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: If the <emphasis role="strong">dpkg-gensymbols</emphasis> command warns about some new symbols:
zh: 如果 <emphasis role="strong">dpkg-gensymbols</emphasis> 命令警告添加了新的符號的話：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Extract the updated <emphasis role="strong">DEBIAN/symbols</emphasis> file with the “<emphasis role="strong">dpkg-deb -e</emphasis>” command.
zh: 使用“<emphasis role="strong">dpkg-deb -e</emphasis>”命令解壓得到更新的 <emphasis role="strong">DEBIAN/symbols</emphasis> 檔案。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Trim the Debian revision such as <emphasis role="strong">-1</emphasis> in it.
zh: 將其中的 Debian 修訂版本號，例如 <emphasis role="strong">-1</emphasis>，從檔案中去除。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Re-build the binary package.
zh: 重新構建二進位制套件。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: If the <emphasis role="strong">dpkg-gensymbols</emphasis> command does not warn about new symbols:
zh: 如果 <emphasis role="strong">dpkg-gensymbols</emphasis> 命令不報和新連結符號有關的警告：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: You are done with the library packaging.
zh: 您已完成了共享程式庫的打包工作。

note: type: Content of: <book><chapter><section><section><simpara>
en: For the details, you should read the following primary references.
zh: 如需瞭解詳細資訊，您應當閱讀下列第一手參考資料。

note: type: Content of: <book><chapter><section><section><simpara>
en: You should also check:
zh: 您也應當檢視：

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Debian wiki <ulink url="https://wiki.debian.org/UsingSymbolsFiles">UsingSymbolsFiles</ulink>
zh: Debian 維基 <ulink url="https://wiki.debian.org/UsingSymbolsFiles">使用符號檔案</ulink>

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Debian wiki <ulink url="https://wiki.debian.org/Projects/ImprovedDpkgShlibdeps">Projects/ImprovedDpkgShlibdeps</ulink>
zh: Debian 維基 <ulink url="https://wiki.debian.org/Projects/ImprovedDpkgShlibdeps">專案/改進的DpkgShlibdeps</ulink>

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Debian kde team <ulink url="https://qt-kde-team.pages.debian.net/symbolfiles.html">Working with symbols files</ulink>
zh: Debian kde 團隊 <ulink url="https://qt-kde-team.pages.debian.net/symbolfiles.html">處理 symbols 檔案</ulink>

note: type: Content of: <book><chapter><section><section><title>
en: Library transition
zh: 程式庫變遷

note: type: Content of: <book><chapter><section><section><simpara>
en: When you package a new library package version which affects other packages, you must file a transition bug report against the <emphasis role="strong">release.debian.org</emphasis> pseudo package using the <emphasis role="strong">reportbug</emphasis> command with the <ulink url="https://ben.debian.net/#_query_language">ben file</ulink> and wait for the approval for its upload from the <ulink url="https://wiki.debian.org/Teams/ReleaseTeam">Release Team</ulink>.
zh: 當您打包新版本的程式庫套件而且此次更新影響到其它的套件時，您必須對 <emphasis role="strong">release.debian.org</emphasis> 偽套件提交一個變遷 bug 報告並附帶一個<ulink url="https://ben.debian.net/#_query_language">ben 檔案</ulink>；您可以使用 <emphasis role="strong">reportbug</emphasis> 工具進行提交。提交後，請等待<ulink url="https://wiki.debian.org/Teams/ReleaseTeam">發行團隊</ulink>的稽核批准方可進行下一步。

note: type: Content of: <book><chapter><section><section><simpara>
en: Release team has the <ulink url="https://release.debian.org/transitions/">transition tracker</ulink>.  See <ulink url="https://wiki.debian.org/Teams/ReleaseTeam/Transitions">Transitions</ulink>.
zh: 發行團隊提供了<ulink url="https://release.debian.org/transitions/">變遷追蹤系統</ulink>。參見 <ulink url="https://wiki.debian.org/Teams/ReleaseTeam/Transitions">變遷（Transition）</ulink>。

note: type: Content of: <book><chapter><section><section><caution><simpara>
en: Please make sure to rename binary packages as in <xref linkend="libnames"/>.
zh: 請確保您按照 <xref linkend="libnames"/> 的描述正確地對二進位制套件進行了重命名。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debconf</emphasis> package enables us to configure packages during their installation in 2 main ways:
zh: <emphasis role="strong">debconf</emphasis> 套件可以幫助我們在下列兩種情況下配置套件：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: non-interactively from the <emphasis role="strong">debian-installer</emphasis> pre-seeding.
zh: 在 <emphasis role="strong">debian-installer</emphasis>（Debian 安裝程式）預安裝時進行非互動式配置。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: interactively from the menu interface (<emphasis role="strong">dialog</emphasis>, <emphasis role="strong">gnome</emphasis>, <emphasis role="strong">kde</emphasis>, …)
zh: 使用選單介面進行互動式配置（<emphasis role="strong">對話方塊（dialog）</emphasis>、<emphasis role="strong">gnome</emphasis>、<emphasis role="strong">kde</emphasis> 等等）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: the package installation: invoked by the <emphasis role="strong">dpkg</emphasis> command
zh: 套件安裝時：由 <emphasis role="strong">dpkg</emphasis> 命令呼叫

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: the installed package: invoked by the <emphasis role="strong">dpkg-reconfigure</emphasis> command
zh: 對已安裝套件：由 <emphasis role="strong">dpkg-reconfigure</emphasis> 命令呼叫

note: type: Content of: <book><chapter><section><simpara>
en: All user interactions for the package installation must be handled by this <emphasis role="strong">debconf</emphasis> system using the following files.
zh: 套件安裝時的所有使用者互動都必須由這裡的 <emphasis role="strong">debconf</emphasis> 系統進行處理，下列配置檔案對這個過程進行控制。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This is the <emphasis role="strong">debconf</emphasis> <emphasis role="strong">config</emphasis> script used for asking any questions necessary to configure the package.
zh: 這是 <emphasis role="strong">debconf</emphasis> <emphasis role="strong">config</emphasis> 指令碼，用於對使用者詢問對於配置套件必需的問題。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This is the <emphasis role="strong">debconf</emphasis> <emphasis role="strong">templates</emphasis> file used for asking any questions necessary to configure the package.
zh: 這是 <emphasis role="strong">debconf</emphasis> <emphasis role="strong">templates</emphasis>（模板）檔案，用於對使用者詢問對於配置套件必需的問題。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: package configuration scripts
zh: 套件配置指令碼

note: type: Content of: <book><chapter><section><title>
en: Multiarch
zh: 多體系架構

note: type: Content of: <book><chapter><section><simpara>
en: Multiarch support for cross-architecture installation of binary packages (particularly <emphasis role="strong">i386</emphasis> and <emphasis role="strong">amd64</emphasis>, but also other combinations) in the <emphasis role="strong">dpkg</emphasis> and <emphasis role="strong">apt</emphasis> packages introduced in Debian <emphasis role="strong">wheezy</emphasis> (7.0, May 2013), demands that we pay extra attention to packaging.
zh: Debian <emphasis role="strong">wheezy</emphasis>（7.0，2013年5月）在 <emphasis role="strong">dpkg</emphasis> 和 <emphasis role="strong">apt</emphasis> 中引入了對跨架構二進位制套件安裝的多架構支援（特別是 <emphasis role="strong">i386</emphasis> 架構和 <emphasis role="strong">amd64</emphasis> 架構，但也支援其它的組合），這部分內容值得我們額外關注。

note: type: Content of: <book><chapter><section><simpara>
en: You should read the following references in detail.
zh: 您應當詳細閱讀下列參考內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Ubuntu wiki (upstream)
zh: Ubuntu 維基（上游）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://wiki.ubuntu.com/MultiarchSpec">MultiarchSpec</ulink>
zh: <ulink url="https://wiki.ubuntu.com/MultiarchSpec">多架構規範（MultiarchSpec）</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian wiki (Debian situation)
zh: Debian 維基（Debian 的現狀）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://wiki.debian.org/Multiarch">Debian multiarch support</ulink>
zh: <ulink url="https://wiki.debian.org/Multiarch">Debian 多架構支援</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <ulink url="https://wiki.debian.org/Multiarch/Implementation">Multiarch/Implementation</ulink>
zh: <ulink url="https://wiki.debian.org/Multiarch/Implementation">多架構支援/實現（Multiarch/Implementation）</ulink>

note: type: Content of: <book><chapter><section><simpara>
en: The multiarch is enabled by using the <emphasis role="strong">&lt;triplet&gt;</emphasis> value such as <emphasis role="strong">i386-linux-gnu</emphasis> and <emphasis role="strong">x86_64-linux-gnu</emphasis> in the install path of shared libraries as <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis>, etc..
zh: 多架構支援使用三元組（<emphasis role="strong">&lt;triplet&gt;</emphasis>）的值，例如 <emphasis role="strong">i386-linux-gnu</emphasis> 和 <emphasis role="strong">x86_64-linux-gnu</emphasis>；它們出現在共享連結程式庫的安裝路徑中，例如 <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis>，等等。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">&lt;triplet&gt;</emphasis> value required internally by <emphasis role="strong">debhelper</emphasis> scripts is implicitly set in themselves.  The maintainer doesn’t need to worry.
zh: 三元組 <emphasis role="strong">&lt;triplet&gt;</emphasis> 的值由 <emphasis role="strong">debhelper</emphasis> 指令碼隱性提前設定好，套件維護者無需擔心。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">&lt;triplet&gt;</emphasis> value used in <emphasis role="strong">override_dh_</emphasis>* target scripts must be explicitly set in the <emphasis role="strong">debian/rules</emphasis> file by the maintainer.  The <emphasis role="strong">&lt;triplet&gt;</emphasis> value is stored in the <emphasis role="strong">$(DEB_HOST_MULTIARCH)</emphasis> variable in the following <emphasis role="strong">debian/rules</emphasis> snippet example:
zh: 不過，在 <emphasis role="strong">debian/rules</emphasis> 檔案中用於 <emphasis role="strong">override_dh_</emphasis>* 目標的三元組 <emphasis role="strong">&lt;triplet&gt;</emphasis> 值需要由維護者手動進行顯性設定。三元組 <emphasis role="strong">&lt;triplet&gt;</emphasis> 的值可由 <emphasis role="strong">$(DEB_HOST_MULTIARCH)</emphasis> 變數在 <emphasis role="strong">debian/rules</emphasis> 檔案中取得到，具體方法如下：

note: type: Content of: <book><chapter><section><simpara>
en: See:
zh: 參見：

note: type: Content of: <book><chapter><section><section><title>
en: The multiarch library path
zh: 多架構程式庫路徑

note: type: Content of: <book><chapter><section><section><simpara>
en: Debian policy requires following <ulink url="https://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html">Filesystem Hierarchy Standard</ulink>.  Its <ulink url="https://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html#USRLIBLIBRARIESFORPROGRAMMINGANDPA">/usr/lib : Libraries for programming and packages</ulink> states "<emphasis role="strong">/usr/lib</emphasis> includes object files, libraries, and internal binaries that are not intended to be executed directly by users or shell scripts."
zh: Debian 政策要求遵守<ulink url="https://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html">檔案系統層級標準</ulink>。其中 <ulink url="https://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html#USRLIBLIBRARIESFORPROGRAMMINGANDPA">/usr/lib：程式和套件的程式庫</ulink> 宣告“<emphasis role="strong">/usr/lib</emphasis> 包含目標檔案、程式庫和其它不應由使用者或 shell 指令碼直接呼叫的內部二進位制檔案。”

note: type: Content of: <book><chapter><section><section><simpara>
en: Debian policy makes an exception to the <ulink url="https://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html">Filesystem Hierarchy Standard</ulink> to use <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis> instead of <emphasis role="strong">/usr/lib&lt;qual&gt;/</emphasis> (e.g., <emphasis role="strong">/lib32/</emphasis> and <emphasis role="strong">/lib64/</emphasis>) to support a multiarch library.
zh: Debian 在<ulink url="https://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html">檔案系統層級標準</ulink>的基礎上新增一項例外，即使用 <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis> 而非 <emphasis role="strong">/usr/lib&lt;qual&gt;/</emphasis>（例如，<emphasis role="strong">/lib32/</emphasis> 和 <emphasis role="strong">/lib64/</emphasis>）以對多架構程式庫提供支持。

note: type: Content of: <book><chapter><section><section><table><title>
en: The multiarch library path options
zh: 多架構程式庫路徑選項

note: type: Content of: <book><chapter><section><section><table><tgroup><thead><row><entry>
en: Classic path
zh: 經典路徑

note: type: Content of: <book><chapter><section><section><table><tgroup><thead><row><entry>
en: i386 multiarch path
zh: i386 多體系架構路徑

note: type: Content of: <book><chapter><section><section><table><tgroup><thead><row><entry>
en: amd64 multiarch path
zh: amd64 多體系架構路徑

note: type: Content of: <book><chapter><section><section><simpara>
en: For Autotools based packages under the <emphasis role="strong">debhelper</emphasis> package (compat&gt;=9), this path setting is automatically taken care by the <emphasis role="strong">dh_auto_configure</emphasis> command.
zh: 對基於 Autotools 且由 <emphasis role="strong">debhelper</emphasis> （compat&gt;=9）管理的套件來說，這些路徑設定已由 <emphasis role="strong">dh_auto_configure</emphasis> 命令自動處理。

note: type: Content of: <book><chapter><section><section><simpara>
en: For other packages with non-supported build systems, you need to manually adjust the install path as follows.
zh: 對於其它使用不支援的構建系統的套件，您需要按照下面的方式手動調整安裝路徑。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: If “<emphasis role="strong">./configure</emphasis>” is used in the <emphasis role="strong">override_dh_auto_configure</emphasis> target in <emphasis role="strong">debian/rules</emphasis>, make sure to replace it with “<emphasis role="strong">dh_auto_configure --</emphasis>” while re-targeting the install path from <emphasis role="strong">/usr/lib/</emphasis> to <emphasis role="strong">/usr/lib/$(DEB_HOST_MULTIARCH)/</emphasis>.
zh: 如果在 <emphasis role="strong">debian/rules</emphasis> 檔案中設定了 <emphasis role="strong">override_dh_auto_configure</emphasis> 目標且其中手動呼叫了“<emphasis role="strong">./configure</emphasis>”命令，請確保將其替換為“<emphasis role="strong">dh_auto_configure --</emphasis>”，這樣可以將安裝路徑從 <emphasis role="strong">/usr/lib/</emphasis> 替換為 <emphasis role="strong">/usr/lib/$(DEB_HOST_MULTIARCH)/</emphasis>。

note: type: Content of: <book><chapter><section><section><itemizedlist><listitem><simpara>
en: Replace all occurrences of <emphasis role="strong">/usr/lib/</emphasis> with <emphasis role="strong">/usr/lib/*/</emphasis> in <emphasis role="strong">debian/</emphasis><emphasis>foo</emphasis><emphasis role="strong">.install</emphasis> files.
zh: 請在 <emphasis role="strong">debian/</emphasis><emphasis>foo</emphasis><emphasis role="strong">.install</emphasis> 檔案中將所有出現的 <emphasis role="strong">/usr/lib/</emphasis> 字串替換為 <emphasis role="strong">/usr/lib/*/</emphasis>。

note: type: Content of: <book><chapter><section><section><simpara>
en: All files installed simultaneously as the multiarch package to the same file path should have exactly the same file content. You must be careful with differences generated by the data byte order and by the compression algorithm.
zh: 所有啟用多架構的套件安裝至相同路徑的檔案必須內容完全相同。您必須小心處理，避免資料位元組序或者壓縮演算法等等問題帶來的檔案內容差異。

note: type: Content of: <book><chapter><section><section><note><simpara>
en: The <emphasis role="strong">--libexecdir</emphasis> option of the <emphasis role="strong">./configure</emphasis> command specifies the default path to install executable programs run by other programs rather than by users. Its Autotools default is <emphasis role="strong">/usr/libexec/</emphasis> but its Debian non-multi-arch default is <emphasis role="strong">/usr/lib/</emphasis>.  If such executables are a part of a "Multi-arch: foreign" package, a path such as <emphasis role="strong">/usr/lib/</emphasis> or <emphasis role="strong">/usr/lib/</emphasis><emphasis>packagename</emphasis> may be more desirable than <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis>, which <emphasis role="strong">dh_auto_configure</emphasis> uses.  The <ulink url="https://www.gnu.org/prep/standards/html_node/Directory-Variables.html">GNU Coding Standards: 7.2.5 Variables for Installation Directories</ulink> has a description for <emphasis role="strong">libexecdir</emphasis> as "The definition of <emphasis role="strong">libexecdir</emphasis> is the same for all packages, so you should install your data in a subdirectory thereof. Most packages install their data under <emphasis role="strong">$(libexecdir)/package-name/</emphasis> …". (It is always a good idea to follow GNU unless it conflicts with the Debian policy.)
zh: <emphasis role="strong">./configure</emphasis> 的 <emphasis role="strong">--libexecdir</emphasis>選項指定了由程式而非使用者所使用的可執行檔案的預設安裝路徑。其 Autotools 的預設值為 <emphasis role="strong">/usr/libexec/</emphasis> 但在未啟用多架構特性的 Debian 系統上其預設值是 <emphasis role="strong">/usr/lib/</emphasis>。如果這些可執行程式屬於被標記為“Multi-arch: foreign”的套件，最好還是使用例如 <emphasis role="strong">/usr/lib/</emphasis> 或者 <emphasis role="strong">/usr/lib/</emphasis><emphasis>套件名</emphasis> 這樣的路徑而非使用 <emphasis role="strong">dh_auto_configure</emphasis> 設定的 <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis> 路徑。<ulink url="https://www.gnu.org/prep/standards/html_node/Directory-Variables.html">GNU 程式設計規範：7.2.5 用於安裝目錄的變數</ulink> 對 <emphasis role="strong">libexecdir</emphasis> 的描述是“<emphasis role="strong">libexecdir</emphasis> 的定義對所有套件相同，所以您應當將您的資料安裝在其下的一個子目錄中。大多數套件將資料安裝至 <emphasis role="strong">$(libexecdir)/package-name/</emphasis> 之中……”（在與 Debian 政策不衝突的前提下，遵守 GNU 的標準總是更好的。）

note: type: Content of: <book><chapter><section><section><simpara>
en: The shared library files in the default path <emphasis role="strong">/usr/lib/</emphasis> and <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis> are loaded automatically.
zh: 位於預設路徑 <emphasis role="strong">/usr/lib/</emphasis> 和 <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis> 的共享程式庫可被自動載入。

note: type: Content of: <book><chapter><section><section><simpara>
en: For shared library files in another path, the GCC option <emphasis role="strong">-l</emphasis> must be set by the <emphasis role="strong">pkg-config</emphasis> command to make them load properly.
zh: 對位於其它路徑的共享程式庫，必須使用 <emphasis role="strong">pkg-config</emphasis> 命令設定 GCC 選項 <emphasis role="strong">-l</emphasis> 以正確進行載入。

note: type: Content of: <book><chapter><section><section><title>
en: The multiarch header file path
zh: 多架構標頭檔案路徑

note: type: Content of: <book><chapter><section><section><simpara>
en: GCC includes both <emphasis role="strong">/usr/include/</emphasis> and <emphasis role="strong">/usr/include/&lt;triplet&gt;/</emphasis> by default on the multiarch Debian system.
zh: 在支援多架構的 Debian 系統上，GCC 預設會同時包含、使用 <emphasis role="strong">/usr/include/</emphasis> 和 <emphasis role="strong">/usr/include/&lt;triplet&gt;/</emphasis> 下的標頭檔案。

note: type: Content of: <book><chapter><section><section><simpara>
en: If the header file is not in those paths, the GCC option <emphasis role="strong">-I</emphasis> must be set by the <emphasis role="strong">pkg-config</emphasis> command to make "<emphasis role="strong">#include &lt;</emphasis><emphasis>foo.h</emphasis><emphasis role="strong">&gt;</emphasis>" work properly.
zh: 如果標頭檔案不在這些路徑中，必須使用 <emphasis role="strong">pkg-config</emphasis> 命令設定 GCC 的 <emphasis role="strong">-I</emphasis> 引數以使得“<emphasis role="strong">#include &lt;</emphasis><emphasis>foo.h</emphasis><emphasis role="strong">&gt;</emphasis>”正常工作。

note: type: Content of: <book><chapter><section><section><table><title>
en: The multiarch header file path options
zh: 多架構標頭檔案路徑選項

note: type: Content of: <book><chapter><section><section><table><tgroup><tbody><row><entry><simpara>
en: <emphasis role="strong">/usr/include/</emphasis><emphasis>packagename</emphasis><emphasis role="strong">/</emphasis>
zh: <emphasis role="strong">/usr/include/</emphasis><emphasis>套件名</emphasis><emphasis role="strong">/</emphasis>

note: type: Content of: <book><chapter><section><section><table><tgroup><tbody><row><entry><simpara>
en: <emphasis role="strong">/usr/include/i386-linux-gnu/</emphasis><emphasis>packagename</emphasis><emphasis role="strong">/</emphasis>
zh: <emphasis role="strong">/usr/include/i386-linux-gnu/</emphasis><emphasis>套件名</emphasis><emphasis role="strong">/</emphasis>

note: type: Content of: <book><chapter><section><section><table><tgroup><tbody><row><entry><simpara>
en: <emphasis role="strong">/usr/include/x86_64-linux-gnu/</emphasis><emphasis>packagename</emphasis><emphasis role="strong">/</emphasis>
zh: <emphasis role="strong">/usr/include/x86_64-linux-gnu/</emphasis><emphasis>套件名</emphasis><emphasis role="strong">/</emphasis>

note: type: Content of: <book><chapter><section><section><table><tgroup><tbody><row><entry><simpara>
en: <emphasis role="strong">/usr/lib/i386-linux-gnu/</emphasis><emphasis>packagename</emphasis><emphasis role="strong">/</emphasis>
zh: <emphasis role="strong">/usr/lib/i386-linux-gnu/</emphasis><emphasis>套件名</emphasis><emphasis role="strong">/</emphasis>

note: type: Content of: <book><chapter><section><section><table><tgroup><tbody><row><entry><simpara>
en: <emphasis role="strong">/usr/lib/x86_64-linux-gnu/</emphasis><emphasis>packagename</emphasis><emphasis role="strong">/</emphasis>
zh: <emphasis role="strong">/usr/lib/x86_64-linux-gnu/</emphasis><emphasis>軟體包名</emphasis><emphasis role="strong">/</emphasis>

note: type: Content of: <book><chapter><section><section><simpara><footnote><simpara>
en: This path is compliant with the FHS.  <ulink url="https://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html#USRLIBLIBRARIESFORPROGRAMMINGANDPA">Filesystem Hierarchy Standard: /usr/lib : Libraries for programming and packages</ulink> states "Applications may use a single subdirectory under <emphasis role="strong">/usr/lib</emphasis>. If an application uses a subdirectory, all architecture-dependent data exclusively used by the application must be placed within that subdirectory."
zh: 這個路徑和 FHS 相容。<ulink url="https://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html#USRLIBLIBRARIESFORPROGRAMMINGANDPA">檔案系統層級標準：/usr/lib：程式和套件的程式庫</ulink> 稱“應用程式可以使用 <emphasis role="strong">/usr/lib</emphasis> 下的一個子目錄。如果一個應用程式使用一個子目錄，所有由此程式所使用的架構相關資料均須放置於該子目錄下。”

note: type: Content of: <book><chapter><section><section><simpara>
en: The use of the <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis><emphasis>packagename</emphasis><emphasis role="strong">/</emphasis> path for the library files allows the upstream maintainer to use the same install script for the multiatch system with <emphasis role="strong">/usr/lib/&lt;triplet&gt;</emphasis> and the biarch system with <emphasis role="strong">/usr/lib&lt;qual&gt;/</emphasis>. <placeholder type="footnote" id="0"/>
zh: 為程式庫檔案使用 <emphasis role="strong">/usr/lib/&lt;triplet&gt;/</emphasis><emphasis>套件名</emphasis><emphasis role="strong">/</emphasis> 路徑可幫助上游維護者對使用 <emphasis role="strong">/usr/lib/&lt;triplet&gt;</emphasis> 的多架構系統和使用 <emphasis role="strong">/usr/lib&lt;qual&gt;/</emphasis> 的雙架構系統使用相同的安裝指令碼。<placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><section><simpara>
en: The use of the file path containing <emphasis>packagename</emphasis> enables having more than 2 development libraries simultaneously installed on a system.
zh: 使用包含 <emphasis>packagename</emphasis> 的檔案路徑也使得在同一系統上同時安裝多個架構的開發程式庫成為可能。

note: type: Content of: <book><chapter><section><section><title>
en: The multiarch <emphasis role="strong">*.pc</emphasis> file path
zh: 多架構支援下的 <emphasis role="strong">*.pc</emphasis> 檔案路徑

note: type: Content of: <book><chapter><section><section><simpara>
en: The <emphasis role="strong">pkg-config</emphasis> program is used to retrieve information about installed libraries in the system.  It stores its configuration parameters in the <emphasis role="strong">*.pc</emphasis> file and is used for setting the <emphasis role="strong">-I</emphasis> and <emphasis role="strong">-l</emphasis> options for GCC.
zh: <emphasis>packagename</emphasis> 用來取得系統上已安裝程式庫的資訊。它在 <emphasis role="strong">*.pc</emphasis> 檔案中儲存配置引數，用來設定 GCC 的 <emphasis role="strong">-I</emphasis> 和 <emphasis role="strong">-l</emphasis> 選項。

note: type: Content of: <book><chapter><section><section><table><title>
en: The <emphasis role="strong">*.pc</emphasis> file path options
zh: <emphasis role="strong">*.pc</emphasis> 檔案路徑選項

note: type: Content of: <book><chapter><section><section><table><tgroup><tbody><row><entry><simpara>
en: <emphasis role="strong">/usr/lib/i386-linux-gnu/pkgconfig/</emphasis>
zh: <emphasis role="strong">/usr/lib/pkgconfig/</emphasis>

note: type: Content of: <book><chapter><section><title>
en: Compiler hardening
zh: 編譯強化

note: type: Content of: <book><chapter><section><simpara>
en: The compiler hardening support spreading for Debian <emphasis role="strong">jessie</emphasis> (8.0, TBA) demands that we pay extra attention to the packaging.
zh: 自 Debian <emphasis role="strong">jessie</emphasis>（8.0 開始）的編譯器強化支援要求我們在打包時加以注意。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian wiki <ulink url="https://wiki.debian.org/Hardening">Hardening</ulink>
zh: Debian 維基 <ulink url="https://wiki.debian.org/Hardening">Hardening（強化）</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Debian wiki <ulink url="https://wiki.debian.org/HardeningWalkthrough">Hardening Walkthrough</ulink>
zh: Debian 維基 <ulink url="https://wiki.debian.org/HardeningWalkthrough">Hardening Walkthrough（強化指南）</ulink>

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command adds template comments to the <emphasis role="strong">debian/rules</emphasis> file as needed for <emphasis role="strong">DEB_BUILD_MAINT_OPTIONS</emphasis>, <emphasis role="strong">DEB_CFLAGS_MAINT_APPEND</emphasis>, and <emphasis role="strong">DEB_LDFLAGS_MAINT_APPEND</emphasis> (see <xref linkend="simple"/> and <emphasis role="strong">dpkg-buildflags</emphasis>(1)).
zh: <emphasis role="strong">debmake</emphasis> 命令會對 <emphasis role="strong">debian/rules</emphasis> 檔案中按需新增 <emphasis role="strong">DEB_BUILD_MAINT_OPTIONS</emphasis>、<emphasis role="strong">DEB_CFLAGS_MAINT_APPEND</emphasis> 和 <emphasis role="strong">DEB_LDFLAGS_MAINT_APPEND</emphasis> 的專案（參見 <xref linkend="simple"/> 和 <emphasis role="strong">dpkg-buildflags</emphasis>(1)）。

note: type: Content of: <book><chapter><section><title>
en: Continuous integration
zh: 持續整合

note: type: Content of: <book><chapter><section><simpara>
en: <ulink url="https://dep-team.pages.debian.net/deps/dep8/">DEP-8</ulink> defines the <emphasis role="strong">debian/tests/control</emphasis> file as the RFC822-style test metadata file for <ulink url="https://en.wikipedia.org/wiki/Continuous_integration">continuous integration</ulink> (CI) of the Debian package.
zh: <ulink url="https://dep-team.pages.debian.net/deps/dep8/">DEP-8</ulink> 定義了 <emphasis role="strong">debian/tests/control</emphasis> 檔案的格式，它是 RFC822 風格的測試元資料檔案，用於 Debian 套件的<ulink url="https://en.wikipedia.org/wiki/Continuous_integration">持續整合</ulink>（CI）。

note: type: Content of: <book><chapter><section><simpara>
en: It is used after building the binary packages from the source package containing this <emphasis role="strong">debian/tests/control</emphasis> file.  When the <emphasis role="strong">autopkgtest</emphasis> command is run, the generated binary packages are installed and tested in the virtual environment according to this file.
zh: 它在完成構建包含 <emphasis role="strong">debian/tests/control</emphasis> 文件的原始碼套件、得到二進位制包之後發揮作用。在執行 <emphasis role="strong">autopkgtest</emphasis> 命令時，所生成的二進位制套件會根據這個檔案在虛擬環境中自動進行安裝和測試。

note: type: Content of: <book><chapter><section><simpara>
en: There are several other CI tools on Debian for you to explore.
zh: 您可以在 Debian 系統上探索使用不同的持續整合系統。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debci</emphasis> package: CI platform on top of the <emphasis role="strong">autopkgtest</emphasis> package
zh: <emphasis role="strong">debci</emphasis> 套件：建立在 <emphasis role="strong">autopkgtest</emphasis> 之上的持續整合平臺

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">jenkins</emphasis> package: generic CI platform
zh: <emphasis role="strong">jenkins</emphasis> 套件：通用持續整合平臺

note: type: Content of: <book><chapter><section><title>
en: Bootstrapping
zh: 自主生成 (Bootstrapping)

note: type: Content of: <book><chapter><section><simpara>
en: Debian cares about supporting new ports or flavours.  The new ports or flavours require <ulink url="https://wiki.debian.org/DebianBootstrap">bootstrapping</ulink> operation for the cross-build of the initial minimal native-building system.  In order to avoid build-dependency loops during bootstrapping, the build-dependency needs to be reduced using the <ulink url="https://wiki.debian.org/BuildProfileSpec">profile</ulink> builds feature.
zh: Debian 關心對新硬體架構的移植工作。新架構的移植工作對<ulink url="https://wiki.debian.org/DebianBootstrap">自主生成（bootstrapping）</ulink>操作有所要求，以完成對初始最小本地構建系統的交叉編譯。為了在自主生成時避免構建依賴成環的問題，需要使用 <ulink url="https://wiki.debian.org/BuildProfileSpec">配置型別（profile）</ulink> 的構建功能特性來縮減所需構建依賴。

note: type: Content of: <book><chapter><section><tip><simpara>
en: If a core package <literal>foo</literal> build depends on a package <literal>bar</literal> with deep build dependency chains but <literal>bar</literal> is only used in the <emphasis role="strong">test</emphasis> target in <literal>foo</literal>, you can safely mark the <literal>bar</literal> with <emphasis role="strong">&lt;!nocheck&gt;</emphasis> in the <emphasis role="strong">Build-depends</emphasis> of <literal>foo</literal> to avoid build loops.
zh: 如果一個核心套件 <literal>foo</literal> 構建時依賴於 <literal>bar</literal> 套件，但後者會引入一長串構建依賴鏈而且 <literal>bar</literal> 僅在 <literal>foo</literal> 的 <emphasis role="strong">test</emphasis> 目標中使用（即僅用於構建後測試），那麼您可以安全地在 <literal>foo</literal> 套件的 <emphasis role="strong">Build-depends</emphasis> 一欄中將 <literal>bar</literal> 標記為 <emphasis role="strong">&lt;!nocheck&gt;</emphasis> 以規避構建依賴環。

note: type: Content of: <book><chapter><section><title>
en: Bug reports
zh: 錯誤報告

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">reportbug</emphasis> command used for the bug report of <emphasis>binarypackage</emphasis> can be customized by the files in <emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/</emphasis>.
zh: <emphasis role="strong">reportbug</emphasis> 命令用於提交 <emphasis>binarypackage</emphasis> 套件的錯誤報告；<emphasis role="strong">usr/share/bug/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">/</emphasis> 可以對針對該軟體所提交報告的內容進行設定。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">dh_bugfiles</emphasis> command installs these files from the template files in the <emphasis role="strong">debian/</emphasis> directory.
zh: <emphasis role="strong">dh_bugfiles</emphasis> 命令將安裝以下位於 <emphasis role="strong">debian/</emphasis> 目錄中的的模板檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This file contains some directions such as redirecting the bug report to another package.
zh: 該檔案包含諸如重定向錯誤報告至其它套件的一些指導性內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: This file is displayed to the user by the <emphasis role="strong">reportbug</emphasis> command.
zh: 該檔案的內容將由 <emphasis role="strong">reportbug</emphasis> 命令對使用者展示。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">reportbug</emphasis> command runs this script to generate a template file for the bug report.
zh: <emphasis role="strong">reportbug</emphasis> 命令執行此指令碼以生成錯誤報告的模板檔案。

note: type: Content of: <book><chapter><section><simpara>
en: See <emphasis role="strong">dh_bugfiles</emphasis>(1) and <ulink url="file:///usr/share/doc/reportbug/README.developers.gz">reportbug’s Features for Developers</ulink>
zh: 參見 <emphasis role="strong">dh_bugfiles</emphasis>(1) 和 <ulink url="file:///usr/share/doc/reportbug/README.developers.gz">為開發者提供的 reportbug 功能特性</ulink>

note: type: Content of: <book><chapter><section><tip><simpara>
en: If you always remind the bug reporter of something or ask them about their situation, use these files to automate it.
zh: 如果您總是需要提醒提交報告的使用者某些注意事項或詢問他們某些問題，使用這些檔案可以將這個過程自動化。

note: type: Content of: <book><chapter><title>
en: debmake options
zh: debmake 選項

note: type: Content of: <book><chapter><simpara>
en: Here are some notable options for the <emphasis role="strong">debmake</emphasis> command.
zh: 這裡提供 <emphasis role="strong">debmake</emphasis> 命令的一些重要選項。

note: type: Content of: <book><chapter><section><title>
en: Shortcut options (-a, -i)
zh: 快捷選項（-a，-i）

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command offers 2 shortcut options.
zh: <emphasis role="strong">debmake</emphasis> 命令提供了兩個快捷選項。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-a</emphasis> : open the upstream tarball
zh: <emphasis role="strong">-a</emphasis>：開啟上游原始碼壓縮包

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-i</emphasis> : execute script to build the binary package
zh: <emphasis role="strong">-i</emphasis>：執行構建二進位制包的指令碼

note: type: Content of: <book><chapter><section><simpara>
en: The example in the above <xref linkend="simple"/> can be done simply as follows.
zh: 前文中<xref linkend="simple"/>的例子可以使用下面的命令直接達到目的。

note: type: Content of: <book><chapter><section><tip><simpara>
en: A URL such as “<emphasis role="strong">https://www.example.org/DL/package-1.0.tar.gz</emphasis>” may be used for the <emphasis role="strong">-a</emphasis> option.
zh: <emphasis role="strong">-a</emphasis> 選項也可以使用“<emphasis role="strong">https://www.example.org/DL/package-1.0.tar.gz</emphasis>”這樣的 URL。

note: type: Content of: <book><chapter><section><tip><simpara>
en: A URL such as “<emphasis role="strong">https://arm.koji.fedoraproject.org/packages/ibus/1.5.7/3.fc21/src/ibus-1.5.7-3.fc21.src.rpm</emphasis>” may be used for the <emphasis role="strong">-a</emphasis> option, too.
zh: <emphasis role="strong">-a</emphasis> 選項也可以使用“<emphasis role="strong">https://arm.koji.fedoraproject.org/packages/ibus/1.5.7/3.fc21/src/ibus-1.5.7-3.fc21.src.rpm</emphasis>”這樣的 URL。

note: type: Content of: <book><chapter><section><section><title>
en: Python module
zh: Python 模組

note: type: Content of: <book><chapter><section><section><simpara>
en: You can generate a functioning single binary Debian package with a reasonable package description directly from the Python module package offered as a tarball, <emphasis>pythonmodule-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis>.  The <emphasis role="strong">-b</emphasis> option specifying the package type <emphasis role="strong">python</emphasis> and the <emphasis role="strong">-s</emphasis> option to copy the package description from the upstream package need to be specified.
zh: 您可以使用以原始碼壓縮包（tarball）形式提供的 <emphasis>pythonmodule-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis> Python 模組包直接生成一個獨立二進位制 Debian 套件。這裡的 <emphasis role="strong">-b</emphasis> 選項可以指定套件型別為 <emphasis role="strong">python</emphasis>，<emphasis role="strong">-s</emphasis> 選項可以從上游壓縮包中提取並複製軟體包描述內容至指定位置。

note: type: Content of: <book><chapter><section><section><simpara>
en: For other interpreted languages that support the <emphasis role="strong">-b</emphasis> option, specify the pertinent <emphasis>type</emphasis> for the <emphasis role="strong">-b</emphasis> option.
zh: 對其他支援 <emphasis role="strong">-b</emphasis> 選項的解釋式程式語言，請給 <emphasis role="strong">-b</emphasis> 選項指定恰當的 <emphasis>type</emphasis> 。

note: type: Content of: <book><chapter><section><section><simpara>
en: For interpreted languages without the <emphasis role="strong">-b</emphasis> option support, specify the <emphasis role="strong">script</emphasis> type instead and add the interpreter package as a dependency of the resulting binary package by adjusting the <emphasis role="strong">debian/control</emphasis> file.
zh: 對沒有 <emphasis role="strong">-b</emphasis> 選線支援的其它解釋性語言，您可以指定其為指令碼型別（<emphasis role="strong">script</emphasis> 型別）並調整 <emphasis role="strong">debian/control</emphasis> 檔案而將直譯器對應的軟體包新增為套件依賴。

note: type: Content of: <book><chapter><section><simpara>
en: The upstream snapshot from the upstream source tree in the VCS can be made with the <emphasis role="strong">-d</emphasis> option if the upstream package supports the “<emphasis role="strong">make dist</emphasis>” equivalence.
zh: 如果上游套件支援“<emphasis role="strong">make dist</emphasis>”或者等效的目標，您可以使用 <emphasis role="strong">-d</emphasis> 選項從上游原始碼樹版本控制系統中得到上游程式碼的快照。

note: type: Content of: <book><chapter><section><simpara>
en: Alternatively, the same can be made with the <emphasis role="strong">-t</emphasis> option if the upstream tarball can be made with the <emphasis role="strong">tar</emphasis> command.
zh: 除此之外，也可使用 <emphasis role="strong">-t</emphasis> 選項以使用 <emphasis role="strong">tar</emphasis> 命令生成上游原始碼套件。

note: type: Content of: <book><chapter><section><simpara>
en: Unless you provide the upstream version with the <emphasis role="strong">-u</emphasis> option or with the <emphasis role="strong">debian/changelog</emphasis> file, a snapshot upstream version is generated in the <emphasis role="strong">0~%y%m%d%H%M</emphasis> format, e.g., <emphasis>0~1403012359</emphasis>, from the UTC date and time.
zh: 除非您明確使用 <emphasis role="strong">-u</emphasis> 選項或者在 <emphasis role="strong">debian/changelog</emphasis> 檔案中提前指定好版本號，預設情況下快照生成的上游版本號將應用協調世界時的日期和時間使用 <emphasis role="strong">0~%y%m%d%H%M</emphasis> 格式生成，例如 <emphasis>0~1403012359</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: If the upstream VCS is hosted in the <emphasis>package/</emphasis> directory instead of the <emphasis>upstream-vcs/</emphasis> directory, the “<emphasis role="strong">-p</emphasis> <emphasis>package”</emphasis> can be skipped.
zh: 如果上游版本控制系統位於 <emphasis>套件名/</emphasis> 目錄而非任意的 <emphasis>上游版本控制系統/</emphasis> 目錄，引數中的“<emphasis role="strong">-p</emphasis> <emphasis>套件名”</emphasis>這部分可以跳過。

note: type: Content of: <book><chapter><section><simpara>
en: If the upstream source tree in the VCS contains the <emphasis role="strong">debian/</emphasis>* files, the <emphasis role="strong">debmake</emphasis> command with either the <emphasis role="strong">-d</emphasis> option or the <emphasis role="strong">-t</emphasis> option combined with the <emphasis role="strong">-i</emphasis> option automates the making of a non-native Debian package from the VCS snapshot while using these <emphasis role="strong">debian/</emphasis>* files.
zh: 如果版本控制系統中的上游原始碼樹包含了 <emphasis role="strong">debian/</emphasis>* 檔案，<emphasis role="strong">debmake</emphasis> 命令在帶有 <emphasis role="strong">-d</emphasis> 選項或者 <emphasis role="strong">-t</emphasis> 選項並結合 <emphasis role="strong">-i</emphasis> 選項可以自動化進行使用這些 <emphasis role="strong">debian/</emphasis>* 檔案從版本控制系統快照中構建非原生套件的流程。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command with the <emphasis role="strong">-cc</emphasis> option can make a summary of the copyright and license for the entire source tree to standard output.
zh: <emphasis role="strong">debmake</emphasis> 命令在帶上 <emphasis role="strong">-cc</emphasis> 選項時可以對標準輸出列印整個原始碼樹的版權和許可證概要資訊。

note: type: Content of: <book><chapter><section><simpara>
en: With the <emphasis role="strong">-c</emphasis> option, this provides shorter report.
zh: 如果轉而使用 <emphasis role="strong">-c</emphasis> 選項，程式將提供較短的報告。

note: type: Content of: <book><chapter><section><simpara>
en: When updating a package for the new upstream release, the <emphasis role="strong">debmake</emphasis> command can verify the content of the existing <emphasis role="strong">debian/copyright</emphasis> file against the copyright and license situation of the entire updated source tree.
zh: 在使用上游新發行版本更新套件時，<emphasis role="strong">debmake</emphasis> 可以使用已有的 <emphasis role="strong">debian/copyright</emphasis> 檔案和整個更新的原始碼樹檔案進行對比驗證版權和許可證資訊。

note: type: Content of: <book><chapter><section><simpara>
en: The “<emphasis role="strong">debmake -k</emphasis>” command parses the <emphasis role="strong">debian/copyright</emphasis> file from the top to the bottom and compares the license of all the non-binary files in the current package with the license described in the last matching file pattern entry of the <emphasis role="strong">debian/copyright</emphasis> file.
zh: “<emphasis role="strong">debmake -k</emphasis>”命令可以完整解析 <emphasis role="strong">debian/copyright</emphasis> 並將當前套件中的所有非二進位制文件內含的許可證資訊按照最後一項匹配的方式與 <emphasis role="strong">debian/copyright</emphasis> 檔案中的資訊進行對比。

note: type: Content of: <book><chapter><section><simpara>
en: When editing the auto-generated <emphasis role="strong">debian/copyright</emphasis> file, please make sure to keep the generic file patterns at the top of the list.
zh: 在您編輯自動生成的 <emphasis role="strong">debian/copyright</emphasis> 檔案時，請確保將最通用的檔案匹配模式放在檔案前部，最精確的匹配模式放在後部。

note: type: Content of: <book><chapter><section><tip><simpara>
en: For all new upstream releases, run the “<emphasis role="strong">debmake -k</emphasis>” command to ensure that the <emphasis role="strong">debian/copyright</emphasis> file is current.
zh: 對所有上游釋出新版本的情況，執行“<emphasis role="strong">debmake -k</emphasis>”可以確保 <emphasis role="strong">debian/copyright</emphasis> 檔案一直處於最新狀態。

note: type: Content of: <book><chapter><section><simpara>
en: The generation of a functioning multi-binary package always requires more manual work than that of a functioning single binary package.  The test build of the source package is the essential part of it.
zh: 生成多個二進位制套件通常比只生成一個二進位制套件需要投入更多的工作量。對原始碼包進行測試構建是其中的必要一環。

note: type: Content of: <book><chapter><section><simpara>
en: For example, let’s package the same <emphasis>package-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis> (see <xref linkend="simple"/>) into a multi binary package.
zh: 例如，我們考慮將相同的 <emphasis>package-1.0</emphasis><emphasis role="strong">.tar.gz</emphasis>（參見 <xref linkend="simple"/>）打包並生成多個二進位制套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Invoke the <emphasis role="strong">debmake</emphasis> command with the <emphasis role="strong">-j</emphasis> option for the test building and the report generation.
zh: 呼叫 <emphasis role="strong">debmake</emphasis> 命令並使用 <emphasis role="strong">-j</emphasis> 選項以測試構建並報告結果。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Check the last lines of the <emphasis>package</emphasis><emphasis role="strong">.build-dep.log</emphasis> file to judge build dependencies for <emphasis role="strong">Build-Depends</emphasis>. (You do not need to list packages used by <emphasis role="strong">debhelper</emphasis>, <emphasis role="strong">perl</emphasis>, or <emphasis role="strong">fakeroot</emphasis> explicitly in <emphasis role="strong">Build-Depends</emphasis>.  This technique is useful for the generation of a single binary package, too.)
zh: 請檢查 <emphasis>package</emphasis><emphasis role="strong">.build-dep.log</emphasis> 檔案最後的幾行以確定 <emphasis role="strong">Build-Depends</emphasis> 所需填寫的構建依賴。（您不需要在 <emphasis role="strong">Build-Depends</emphasis> 中列出 <emphasis role="strong">debhelper</emphasis>、<emphasis role="strong">perl</emphasis> 或 <emphasis role="strong">fakeroot</emphasis> 所使用的套件。在只生成單個套件的情況下也是如此。）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Check the contents of the <emphasis>package</emphasis><emphasis role="strong">.install.log</emphasis> file to identify the install paths for files to decide how you split them into multiple packages.
zh: 請檢查 <emphasis>package</emphasis><emphasis role="strong">.install.log</emphasis> 的檔案內容以確定各個檔案的安裝路徑，從而決定如何將它們拆分成多個套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Start packaging with the <emphasis role="strong">debmake</emphasis> command.
zh: 呼叫 <emphasis role="strong">debmake</emphasis> 命令以開始準備打包資訊。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Update <emphasis role="strong">debian/control</emphasis> and <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.install</emphasis> files using the above information.
zh: 請使用以上資訊更新 <emphasis role="strong">debian/control</emphasis> 和 <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.install</emphasis> 檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Update other <emphasis role="strong">debian/</emphasis>* files as needed.
zh: 按需更新其它 <emphasis role="strong">debian/</emphasis>* 檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: Build the Debian package with the <emphasis role="strong">debuild</emphasis> command or its equivalent.
zh: 使用 <emphasis role="strong">debuild</emphasis> 或等效的其它工具構建 Debian 套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: All binary package entries specified in the <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.install</emphasis> file are generated as <emphasis>binarypackage_version-revision_arch</emphasis><emphasis role="strong">.deb</emphasis>.
zh: 所有由 <emphasis role="strong">debian/</emphasis><emphasis>binarypackage</emphasis><emphasis role="strong">.install</emphasis> 檔案指定的二進位制套件條目均會生成 <emphasis>binarypackage_version-revision_arch</emphasis><emphasis role="strong">.deb</emphasis> 的安裝檔。

note: type: Content of: <book><chapter><section><note><simpara>
en: The <emphasis role="strong">-j</emphasis> option for the <emphasis role="strong">debmake</emphasis> command invokes <emphasis role="strong">dpkg-depcheck</emphasis>(1) to run <emphasis role="strong">debian/rules</emphasis> under <emphasis role="strong">strace</emphasis>(1) to obtain library dependencies.  Unfortunately, this is very slow.  If you know the library package dependencies from other sources such as the SPEC file in the source, you may just run the "<emphasis role="strong">debmake</emphasis> …" command without the <emphasis role="strong">-j</emphasis> option and run the “<emphasis role="strong">debian/rules install</emphasis>” command to check the install paths of the generated files.
zh: <emphasis>binarypackage_version-revision_arch</emphasis><emphasis role="strong">.deb</emphasis> 命令的 <emphasis role="strong">-j</emphasis> 選項會呼叫 <emphasis role="strong">dpkg-depcheck</emphasis>(1) 以在 <emphasis role="strong">strace</emphasis>(1) 之下執行 <emphasis role="strong">debian/rules</emphasis>，從而獲得程式庫依賴資訊。然而，這樣操作的執行速度極慢。如果您由其他途徑獲知了套件的程式庫套件依賴資訊，例如外部的 SPEC 文件等等，您可以直接執行“<emphasis role="strong">debmake</emphasis> …”命令而不帶 <emphasis role="strong">-j</emphasis> 選項並執行“<emphasis role="strong">debian/rules install</emphasis>”命令以檢查所生成檔案的安裝路徑。

note: type: Content of: <book><chapter><section><simpara>
en: The amount of template files generated by the <emphasis role="strong">debmake</emphasis> command depends on the <emphasis role="strong">-x</emphasis>[01234] option.
zh: <emphasis role="strong">debmake</emphasis> 生成的模板檔案數量由 <emphasis role="strong">-x</emphasis>[01234] 選項進行控制。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: See <xref linkend="emptypkg"/> for cherry-picking of the template files.
zh: 請參見 <xref linkend="emptypkg"/> 以瞭解與揀選使用模板檔案的方式。

note: type: Content of: <book><chapter><section><note><simpara>
en: None of the existing configuration files are modified by the <emphasis role="strong">debmake</emphasis> command.
zh: <emphasis role="strong">debmake</emphasis> 命令不會修改任何已存在的配置文件。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command invoked with the <emphasis role="strong">-P</emphasis> option pedantically checks auto-generated files for copyright+license text even if they are with permissive license.
zh: 呼叫 <emphasis role="strong">debmake</emphasis> 命令並帶上 <emphasis role="strong">-P</emphasis> 選項將會嚴厲地檢查所有自動生成檔案的版權和許可證文字資訊；即使它們都使用寬鬆的許可證也是如此。

note: type: Content of: <book><chapter><section><simpara>
en: This option affects not only the content of the <emphasis role="strong">debian/copyright</emphasis> file generated by normal execution, but also the output by the execution with the <emphasis role="strong">-k</emphasis>, <emphasis role="strong">-c</emphasis>, <emphasis role="strong">-cc</emphasis>, and <emphasis role="strong">-ccc</emphasis> options.
zh: 此選項不止會影響正常執行過程中所生成的 <emphasis role="strong">debian/copyright</emphasis> 檔案的內容，也會影響帶引數 <emphasis role="strong">-k</emphasis>、<emphasis role="strong">-c</emphasis>、<emphasis role="strong">-cc</emphasis> 和 <emphasis role="strong">-ccc</emphasis> 選項的輸出內容。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debmake</emphasis> command invoked with the <emphasis role="strong">-T</emphasis> option additionally prints verbose tutorial comment lines.  The lines marked with <emphasis role="strong">###</emphasis> in the template files are part of the verbose tutorial comment lines.
zh: 呼叫 <emphasis role="strong">debmake</emphasis> 命令並帶上 <emphasis role="strong">-T</emphasis> 選項會額外輸出詳細的教材註釋行。這些行在模板檔案中用 <emphasis role="strong">###</emphasis> 進行標註。

note: type: Content of: <book><chapter><title>
en: Tips
zh: 小技巧

note: type: Content of: <book><chapter><simpara>
en: Here are some notable tips about Debian packaging.
zh: 這裡有一些關於 Debian 打包的值得注意的小技巧。

note: type: Content of: <book><chapter><section><simpara>
en: You can compare file contents in two source Debian packages with the <emphasis role="strong">debdiff</emphasis> command.
zh: 您可以使用 <emphasis role="strong">debdiff</emphasis> 命令來對比兩個 Debian 套件組成的差別。

note: type: Content of: <book><chapter><section><simpara>
en: You can also compare file lists in two sets of binary Debian packages with the <emphasis role="strong">debdiff</emphasis> command.
zh: 您也可以使用 <emphasis role="strong">debdiff</emphasis> 命令來對比兩組二進制 Debian 套件中的檔案列表。

note: type: Content of: <book><chapter><section><simpara>
en: These are useful to identify what has been changed in the source packages and to check for inadvertent changes made when updating binary packages, such as unintentionally misplacing or removing files.
zh: 當檢查原始碼套件中哪些檔案被修改時，這個命令非常有用。它還可以用來檢測二進位制包中是否有檔案在更新過程中發生變動，比如被意外替換或刪除。

note: type: Content of: <book><chapter><section><simpara>
en: You can download the set of files for the Debian source package with the <emphasis role="strong">dget</emphasis> command.
zh: 您可以使用 <emphasis role="strong">dget</emphasis> 命令來下載 Debian 套件原始碼的檔案集。

note: type: Content of: <book><chapter><section><simpara>
en: You should install generated packages with the <emphasis role="strong">debc</emphasis> command to test it locally.
zh: 您應該使用 <emphasis role="strong">debc</emphasis> 命令安裝生成的套件以在本地測試它。

note: type: Content of: <book><chapter><section><simpara>
en: You should install generated packages with the <emphasis role="strong">piuparts</emphasis> command to test it automatically.
zh: 您應該使用 <emphasis role="strong">piuparts</emphasis> 命令安裝生成的套件以自動進行測試。

note: type: Content of: <book><chapter><section><note><simpara>
en: This is a very slow process with remote APT package repository access.
zh: 這是一個非常慢的過程，因為它需要查詢遠端 APT 套件倉庫。

note: type: Content of: <book><chapter><section><simpara>
en: After completing the test of the package, you can sign it with the <emphasis role="strong">debsign</emphasis> command.
zh: 完成套件的測試後，您可以使用 <emphasis role="strong">debsign</emphasis> 命令對其進行簽名。

note: type: Content of: <book><chapter><section><simpara>
en: After signing the package with the <emphasis role="strong">debsign</emphasis> command, you can upload the set of files for the Debian source and binary packages with the <emphasis role="strong">dput</emphasis> command.
zh: 使用 <emphasis role="strong">debsign</emphasis> 命令對包進行簽名後，您可以使用 <emphasis role="strong">dput</emphasis> 命令上傳 Debian 源和二進位制包的檔案集。

note: type: Content of: <book><chapter><section><simpara>
en: After uploading the package, you will receive bug reports.  It is an important duty of a package maintainer to manage these bugs properly as described in <ulink url="https://www.debian.org/doc/manuals/developers-reference/pkgs.html#bug-handling">5.8. Handling bugs</ulink> of the “Debian Developer’s Reference”.
zh: 上傳套件後，您將收到錯誤報告。 如《Debian 開發者參考》<ulink url="https://www.debian.org/doc/manuals/developers-reference/pkgs.html#bug-handling">5.8. 處理缺陷</ulink> 中所述，正確地管理這些錯誤是套件維護者的一項重要職責。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">bts</emphasis> command is a handy tool to manage bugs on the <ulink url="https://www.debian.org/Bugs/">Debian Bug Tracking System</ulink>.
zh: <emphasis role="strong">bts</emphasis> 命令是一個用以處理 <ulink url="https://www.debian.org/Bugs/">Debian 缺陷追蹤系統</ulink> 上的錯誤的便捷工具。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">git-buildpackage</emphasis> package offers many commands to automate packaging activities using the git repository.
zh: <emphasis role="strong">git-buildpackage</emphasis> 套件提供了許多命令來使用 git 倉庫自動打包。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">gbp import-dsc</emphasis>: import the previous Debian source package to the git repository.
zh: <emphasis role="strong">gbp import-dsc</emphasis>：在 git 倉庫中匯入先前的 Debian 原始碼套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">gbp import-orig</emphasis>: import the new upstream tar to the git repository.
zh: <emphasis role="strong">gbp import-orig</emphasis>：在 git 倉庫中匯入新的上遊原始碼。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">--pristine-tar</emphasis> option for the <emphasis role="strong">git import-orig</emphasis> command enables storing the upstream tarball in the same git repository.
zh: <emphasis role="strong">git import-orig</emphasis> 命令的 <emphasis role="strong">--pristine-tar</emphasis> 選項允許將上游原始碼套件儲存在同一個 git 倉庫中。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">--uscan</emphasis> option as the last argument of the <emphasis role="strong">gbp import-orig</emphasis> command enables downloading and committing the new upstream tarball into the git repository.
zh: 將 <emphasis role="strong">--uscan</emphasis> 選項作為 <emphasis role="strong">gbp import-orig</emphasis> 命令的最後一個引數會允許下載上游原始碼並提交到 git 倉庫中。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">gbp dch</emphasis>: generate the Debian changelog from the git commit messages.
zh: <emphasis role="strong">gbp dch</emphasis>：從 git 提交資訊中生成 Debian 變更資訊（changelog）。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">gbp buildpackage</emphasis>: build the Debian binary package from the git repository.
zh: <emphasis role="strong">gbp buildpackage</emphasis>：從 git 倉庫中構建 Debian 二進位制包。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">gbp pull</emphasis>: update the <emphasis role="strong">debian</emphasis>, <emphasis role="strong">upstream</emphasis> and <emphasis role="strong">pristine-tar</emphasis> branches safely from the remote repository.
zh: <emphasis role="strong">gbp pull</emphasis>：從遠端倉庫中安全更新 <emphasis role="strong">debian</emphasis>, <emphasis role="strong">upstream</emphasis> and <emphasis role="strong">pristine-tar</emphasis> 分支。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">gbp pq</emphasis>, <emphasis role="strong">git-dpm</emphasis> or <emphasis role="strong">quilt</emphasis> (or alias <emphasis role="strong">dquilt</emphasis>) commands are used to manage quilt patches.
zh: <emphasis role="strong">gbp pq</emphasis>、<emphasis role="strong">git-dpm</emphasis> 或 <emphasis role="strong">quilt</emphasis>（或者其別名 <emphasis role="strong">dquilt</emphasis>）命令用於管理相容 quilt 的補丁。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">dquilt</emphasis> command is the simplest to learn and requires you to commit the resulting files manually with the <emphasis role="strong">git</emphasis> command to the <emphasis role="strong">master</emphasis> branch.
zh: <emphasis role="strong">dquilt</emphasis> 命令是學起來最簡單的，它只要求您使用 <emphasis role="strong">git</emphasis> 命令手動提交最後的檔案至 <emphasis role="strong">master</emphasis> 分支。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The “<emphasis role="strong">gbp pq</emphasis>” command provides the equivalent functionality of patch set management without using <emphasis role="strong">dquilt</emphasis> and eases including upstream git repository changes by cherry-picking.
zh: “<emphasis role="strong">gbp pq</emphasis>” 命令提供了等效的補丁集管理功能，而不需要使用 <emphasis role="strong">dquilt</emphasis> 並且使用 git 的揀選（cherry-pick）功能，簡化了包含上游 git 倉庫修改的操作流程。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: The “<emphasis role="strong">git dpm</emphasis>” command provides more enhanced functionality than that of the ‘<emphasis role="strong">gbp pq</emphasis>’' command.
zh: “<emphasis role="strong">git dpm</emphasis>” 命令提供了比 “<emphasis role="strong">gbp pq</emphasis>” 更強大的功能。

note: type: Content of: <book><chapter><section><simpara>
en: Package history management with the <emphasis role="strong">git-buildpackage</emphasis> package is becoming the standard practice for most Debian maintainers.
zh: 使用<emphasis role="strong">git-buildpackage</emphasis>套件來管理套件歷史，正成為絕大多數 Debian 維護者的實踐標準。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://honk.sigxcpu.org/projects/git-buildpackage/manual-html/gbp.html">Building Debian Packages with git-buildpackage</ulink>
zh: <ulink url="https://honk.sigxcpu.org/projects/git-buildpackage/manual-html/gbp.html">使用 git-buildpackage 構建 Debian 套件</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">systemd</emphasis> packaging practice documentation on <ulink url="https://salsa.debian.org/systemd-team/systemd/blob/master/debian/README.source">Building from source</ulink>.
zh: <emphasis role="strong">systemd</emphasis> 打包實踐文件在 <ulink url="https://salsa.debian.org/systemd-team/systemd/blob/master/debian/README.source">從原始碼構建</ulink>。

note: type: Content of: <book><chapter><section><tip><simpara>
en: Relax. You don’t need to use all the wrapper tools.  Use only ones which match your needs.
zh: 放鬆。您並不需要使用全部的打包工具，您只需要使用您所需要的那個就行。

note: type: Content of: <book><chapter><section><section><simpara>
en: For Debian source packages named <emphasis>&lt;source-package&gt;</emphasis> recorded in the <ulink url="http://snapshot.debian.org/">snapshot.debian.org</ulink> archive, an initial git repository with all of the Debian version history can be generated as follows.
zh: 對於記錄在 <ulink url="http://snapshot.debian.org/">snapshot.debian.org</ulink> 歸檔中的名為 <emphasis>&lt;source-package&gt;</emphasis> 的 Debian 原始碼套件，可以生成包含所有 Debian 版本歷史的初始 git 儲存庫，如下所示。

note: type: Content of: <book><chapter><section><section><title>
en: Upstream git repository
zh: 上游 git 倉庫

note: type: Content of: <book><chapter><section><section><simpara>
en: For Debian packaging with the <emphasis role="strong">git-buildpackage</emphasis> package, the <emphasis role="strong">upstream</emphasis> branch on the remote repository <emphasis role="strong">origin</emphasis> is normally used to track the content of the released upstream tarball.
zh: 對於使用 <emphasis role="strong">git-buildpackage</emphasis> 打包的 Debian 套件，遠端儲存庫 <emphasis role="strong">origin</emphasis> 上的 <emphasis role="strong">upstream</emphasis> 分支通常用於追蹤已釋出的上游原始碼的內容。

note: type: Content of: <book><chapter><section><section><simpara>
en: The upstream git repository can also be tracked by naming its remote repository as <emphasis role="strong">upstream</emphasis> instead of the default <emphasis role="strong">origin</emphasis>.  Then you can easily cherry-pick recent upstream changes into the Debian revision by cherry-picking with the <emphasis role="strong">gitk</emphasis> command and using the <emphasis role="strong">gbp-pq</emphasis> command.
zh: 也可以通過將其遠端儲存庫命名為 <emphasis role="strong">upstream</emphasis> 而不是預設的 <emphasis role="strong">origin</emphasis> 來追蹤上游 git 倉庫。 然後，您可以通過使用 <emphasis role="strong">gitk</emphasis> 命令和 <emphasis role="strong">gbp-pq</emphasis> 命令進行挑選，輕鬆地將最近的上游更改新增到 Debian 修訂版中。

note: type: Content of: <book><chapter><section><section><tip><simpara>
en: The “<emphasis role="strong">gbp import-orig --upstream-vcs-tag</emphasis>” command can create a nice packaging history by making a merge commit into the <emphasis role="strong">upstream</emphasis> branch from the specified tag on the upstream git repository.
zh: “<emphasis role="strong">gbp import-orig --upstream-vcs-tag</emphasis>” 命令可以通過使用上游 git 倉庫中的指定標籤在 <emphasis role="strong">upstream</emphasis> 分支上建立一個合併提交的方式來生成乾淨的打包歷史資訊。

note: type: Content of: <book><chapter><section><section><caution><simpara>
en: The content of the released upstream tarball may not match exactly with the corresponding content of the upstream git repository.  It may contain some auto-generated files or miss some files.  (Autotools, distutils, …)
zh: 已釋出的上游原始碼的內容可能與上游 git 儲存庫的相應內容並不完全匹配。 它可能包含一些自動生成的檔案或遺漏一些檔案。（Autotools、distutils......）

note: type: Content of: <book><chapter><section><simpara>
en: Here is a quick summary of available package build commands.  There are many ways to do the same thing.
zh: 以下是可用的套件構建命令的快速總結。 有很多方法可以做同樣的事情。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">dpkg-buildpackage</emphasis> = core of package building tool
zh: <emphasis role="strong">dpkg-buildpackage</emphasis> = 套件打包工具的核心

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">debuild</emphasis> = <emphasis role="strong">dpkg-buildpackage</emphasis> + <emphasis role="strong">lintian</emphasis> (build under the sanitized environment variables)
zh: <emphasis role="strong">debuild</emphasis> = <emphasis role="strong">dpkg-buildpackage</emphasis> + <emphasis role="strong">lintian</emphasis> （在清理後的環境變數下構建）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">gbp</emphasis> = manage the Debian source under git
zh: <emphasis role="strong">gbp</emphasis> = 在 git 下管理 Debian 原始碼

note: type: Content of: <book><chapter><section><simpara>
en: An arbitrary <emphasis>dist</emphasis> distribution environment can be used as follows.
zh: 可以根據如下方式使用任意的 <emphasis>dist</emphasis> 版本環境。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The chroot filesystem creation command for the <emphasis>dist</emphasis> distribution
zh: 用於 <emphasis role="strong">dist</emphasis> 版本的 chroot 檔案系統建立命令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The master chroot filesystem path for the <emphasis>dist</emphasis> distribution chroot
zh: <emphasis role="strong">dist</emphasis> 版本的 chroot 檔案系統的檔案路徑

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The package build command for the <emphasis>dist</emphasis> distribution chroot
zh: <emphasis role="strong">dist</emphasis> 版本 chroot 的套件構建命令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The command to update the <emphasis>dist</emphasis> chroot
zh: 更新 <emphasis role="strong">dist</emphasis> chroot 的命令

note: type: Content of: <book><chapter><section><note><simpara>
en: The description in this section is too terse to be useful for most of the prospective maintainers.  This is the intentional choice of the author.  You are highly encouraged to search and read all the pertinent documents associated with the commands used.
zh: 本節中的描述過於簡潔，對大多數潛在的維護者都沒用。 這是作者的有意為之。 我們強烈建議您搜尋並閱讀與所用命令相關的所有文件。

note: type: Content of: <book><chapter><section><title>
en: New Debian revision
zh: 新的 Debian 版本

note: type: Content of: <book><chapter><section><formalpara><title>
en: New Debian revision with the <emphasis role="strong">dquilt</emphasis> command
zh: 使用 <emphasis role="strong">dquilt</emphasis> 命令準備新的 Debian 套件修訂版本

note: type: Content of: <book><chapter><section><simpara>
en: Alternatively if the package is managed in the git repository using the <emphasis role="strong">git-buildpackage</emphasis> command with its default configuration:
zh: 此外，如果套件是用 <emphasis role="strong">git-buildpackage</emphasis> 命令以其預設配置管理的 git 倉庫：

note: type: Content of: <book><chapter><section><formalpara><title>
en: New Debian revision with the <emphasis role="strong">gbp-pq</emphasis> command
zh: 使用 <emphasis role="strong">gbp-pq</emphasis> 命令進行新的 Debian 修訂

note: type: Content of: <book><chapter><section><simpara>
en: Please make sure to describe concisely the changes that fix reported bugs and close those bugs by adding “<emphasis role="strong">Closes: #</emphasis><emphasis>&lt;bug_number&gt;”</emphasis> in the <emphasis role="strong">debian/changelog</emphasis> file.
zh: 請確保簡明扼要地描述修復報告錯誤的更改並通過在 <emphasis role="strong">debian/changelog</emphasis> 檔案中新增 “<emphasis role="strong">Closes: #</emphasis><emphasis>&lt;bug_number&gt;”</emphasis> 來關閉這些錯誤。

note: type: Content of: <book><chapter><section><tip><simpara>
en: Use a <emphasis role="strong">debian/changelog</emphasis> entry with a version string such as <emphasis role="strong">1.0.1-1~rc1</emphasis> when you experiment. Then, unclutter such <emphasis role="strong">changelog</emphasis> entries into a single entry for the official package.
zh: 在實驗時使用帶有版本字串的 <emphasis role="strong">debian/changelog</emphasis> 條目，例如 <emphasis role="strong">1.0.1-1~rc1</emphasis> 。然後，將這些更改日誌條目整理到官方套件的條目中。

note: type: Content of: <book><chapter><section><title>
en: New upstream release
zh: 新上游版本

note: type: Content of: <book><chapter><section><simpara><footnote><simpara>
en: If a package <emphasis role="strong">foo</emphasis> is packaged in the old <emphasis role="strong">1.0</emphasis> format, this can be done by running the “<emphasis role="strong">zcat</emphasis> <emphasis>/path/to/foo_oldversion</emphasis><emphasis role="strong">.diff.gz|patch -p1</emphasis>” command in the new extracted source, instead.
zh: 如果 <emphasis role="strong">foo</emphasis> 包是以舊的 <emphasis role="strong">1.0</emphasis> 格式打包的，則相對的，只要在新的原始碼路徑中執行“<emphasis role="strong">zcat</emphasis> <emphasis>/path/to/foo_oldversion</emphasis><emphasis role="strong">.diff.gz|patch -p1</emphasis>”命令。

note: type: Content of: <book><chapter><section><simpara>
en: If a package <emphasis role="strong">foo</emphasis> is properly packaged in the modern “<emphasis role="strong">3.0 (native)</emphasis>” or “<emphasis role="strong">3.0 (quilt)</emphasis>” formats, packaging a new upstream release is essentially moving the old <emphasis role="strong">debian/</emphasis> directory to the new source. This can be done by running the “<emphasis role="strong">tar -xvzf</emphasis> <emphasis>/path/to/foo_oldversion</emphasis><emphasis role="strong">.debian.tar.gz</emphasis>” command in the new extracted source. <placeholder type="footnote" id="0"/> Of course, you need to do some obvious chores.
zh: 如果 <emphasis role="strong">foo</emphasis> 包是以現代“<emphasis role="strong">3.0 (native)</emphasis>”或“<emphasis role="strong">3.0 (quilt)</emphasis>”格式正確打包的，則打包新的上游版本時需要將舊的 <emphasis role="strong">debian/</emphasis> 目錄移動到新的原始碼路徑中。 這可以通過在新提取的原始碼路徑中執行“<emphasis role="strong">tar -xvzf</emphasis> <emphasis>/path/to/foo_oldversion</emphasis><emphasis role="strong">.debian.tar.gz</emphasis>”命令來完成。<placeholder type="footnote" id="0"/> 當然，你還需要做一些修改。

note: type: Content of: <book><chapter><section><simpara>
en: There are several tools to handle this situation.  After updating to the new upstream release with these tools, please make sure to describe concisely the changes in the new upstream release that fix reported bugs and close those bugs by adding “<emphasis role="strong">Closes: #</emphasis><emphasis>bug_number”</emphasis> in the <emphasis role="strong">debian/changelog</emphasis> file.
zh: 有很多的工具可以用以處理這些情況。在使用這些軟體來更新上游版本後，請在 <emphasis role="strong">debian/changelog</emphasis> 檔案中簡要描述修復錯誤的上游修改，並新增 “<emphasis role="strong">Closes: #</emphasis><emphasis>bug_number”</emphasis> 來關閉錯誤。

note: type: Content of: <book><chapter><section><section><simpara>
en: You can automatically update to the new upstream source with the <emphasis role="strong">uupdate</emphasis> command from the <emphasis role="strong">devscripts</emphasis> package.  It requires having the old Debian source package and the new upstream tarball.
zh: 您可以使用來自 <emphasis role="strong">uupdate</emphasis> 套件中的 <emphasis role="strong">uupdate</emphasis> 命令來自動更新到新的上游原始碼。該命令需要舊的 Debian 原始碼套件和新的上游原始碼套件。

note: type: Content of: <book><chapter><section><section><simpara>
en: You can automatically update to the new upstream source with the <emphasis role="strong">uscan</emphasis> command from the <emphasis role="strong">devscripts</emphasis> package.  It requires having the old Debian source package and the <emphasis role="strong">debian/watch</emphasis> file in it.
zh: 您可以使用來自 <emphasis role="strong">uupdate</emphasis> 套件中的 <emphasis role="strong">uscan</emphasis> 命令來自動更新到新的上游原始碼。該命令需要包含 <emphasis role="strong">debian/watch</emphasis> 檔案的舊的 Debian 原始碼套件。

note: type: Content of: <book><chapter><section><section><simpara>
en: You can automatically update to the new upstream source with the “<emphasis role="strong">gbp import-orig --pristine-tar</emphasis>” command from the <emphasis role="strong">git-buildpackage</emphasis> package.  It requires having the old Debian source in the git repository and the new upstream tarball.
zh: 您可以使用來自 <emphasis role="strong">git-buildpackage</emphasis> 套件中的 “<emphasis role="strong">gbp import-orig --pristine-tar</emphasis>” 命令來自動更新到新的上游原始碼。該命令需要在 git 倉庫中的 Debian 原始碼和新的上游原始碼包。

note: type: Content of: <book><chapter><section><section><tip><simpara>
en: If upstream uses a git repository, please also use the <emphasis role="strong">--upstream-vcs-tag</emphasis> option for the <emphasis role="strong">gbp import-orig</emphasis> command.
zh: 如果上游也使用 git 倉庫，請為 <emphasis role="strong">gbp import-orig</emphasis> 命令加上 <emphasis role="strong">--upstream-vcs-tag</emphasis> 選項。

note: type: Content of: <book><chapter><section><section><simpara>
en: You can automatically update to the new upstream source with the “<emphasis role="strong">gbp import-orig --pristine-tar --uscan</emphasis>” command from the <emphasis role="strong">git-buildpackage</emphasis> package.  It requires having the old Debian source in the git repository and the <emphasis role="strong">debian/watch</emphasis> file in it.
zh: 您可以使用來自 <emphasis role="strong">git-buildpackage</emphasis> 套件中的“<emphasis role="strong">gbp import-orig --pristine-tar --uscan</emphasis>”命令來自動更新到新的上游原始碼。該命令需要在 git 倉庫中的包含 <emphasis role="strong">debian/watch</emphasis> 檔案的 Debian 原始碼。

note: type: Content of: <book><chapter><section><title>
en: 3.0 source format
zh: 3.0 原始碼格式

note: type: Content of: <book><chapter><section><simpara>
en: Updating the package style is not a required activity for the update of a package. However, doing so lets you use the full capabilities of the modern <emphasis role="strong">debhelper</emphasis> system and the <emphasis role="strong">3.0</emphasis> source format.
zh: 更新套件的風格並不是更新套件所必須的步驟。但是，這麼做可以讓您充分利用現代 <emphasis role="strong">debhelper</emphasis> 和 <emphasis role="strong">3.0</emphasis> 原始碼格式的所有能力。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: If you need to recreate deleted template files for any reason, you can run <emphasis role="strong">debmake</emphasis> again in the same Debian package source tree. Then edit them appropriately.
zh: 如果您因任何原因需要重新建立已刪除的模板檔案，您可以在同一個 Debian 套件源碼樹中再次執行 <emphasis role="strong">debmake</emphasis>。然後適當地編輯它們。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: If the package has not been updated to use the <emphasis role="strong">dh</emphasis> command for the <emphasis role="strong">debian/rules</emphasis> file, update it to use it (see <xref linkend="simplerules"/>). Update the <emphasis role="strong">debian/control</emphasis> file accordingly.
zh: 如果套件還未更新到可為 <emphasis role="strong">debian/rules</emphasis> 文件使用 <emphasis role="strong">dh</emphasis> 命令，請升級它以便使用該命令（參見 <xref linkend="simplerules"/>）。請根據具體情況更新 <emphasis role="strong">debian/control</emphasis> 檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara><footnote><simpara>
en: You can split the <emphasis role="strong">big.diff</emphasis> file into many small incremental patch files using the <emphasis role="strong">splitdiff</emphasis> command.
zh: 您可以使用 <emphasis role="strong">splitdiff</emphasis> 命令來將 <emphasis role="strong">big.diff</emphasis> 檔案分割成多個小的增量更新補丁檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: If you have a <emphasis role="strong">1.0</emphasis> source package with the <emphasis role="strong">foo.diff.gz</emphasis> file, you can update it to the newer “<emphasis role="strong">3.0 (quilt)</emphasis>” source format by creating <emphasis role="strong">debian/source/format</emphasis> with “<emphasis role="strong">3.0 (quilt)</emphasis>”. The rest of the <emphasis role="strong">debian/</emphasis>* files can just be copied. Import the <emphasis role="strong">big.diff</emphasis> file generated by the “<emphasis role="strong">filterdiff -z -x <emphasis><emphasis role="strong">/debian/</emphasis></emphasis> foo.diff.gz &gt; big.diff</emphasis>” command to your quilt system, if needed. <placeholder type="footnote" id="0"/>
zh: 如果你有一個帶有 <emphasis role="strong">foo.diff.gz</emphasis> 檔案的 <emphasis role="strong">1.0</emphasis> 格式的原始碼套件，你可以通過建立帶有“<emphasis role="strong">3.0 (quilt)</emphasis>”的 <emphasis role="strong">debian/source/format</emphasis> 檔案來升級至新的 “<emphasis role="strong">3.0 (quilt)</emphasis>”格式。剩下的 <emphasis role="strong">debian/</emphasis>* 檔案可以直接複製。如果需要的話，可以將“<emphasis role="strong">filterdiff -z -x <emphasis><emphasis role="strong">/debian/</emphasis></emphasis> foo.diff.gz &gt; big.diff</emphasis>”命令生成的 <emphasis role="strong">big.diff</emphasis> 檔案匯入到你的 quilt 系統中。<placeholder type="footnote" id="0"/>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: If it was packaged using another patch system such as <emphasis role="strong">dpatch</emphasis>, <emphasis role="strong">dbs</emphasis>, or <emphasis role="strong">cdbs</emphasis> with <emphasis role="strong">-p0</emphasis>, <emphasis role="strong">-p1</emphasis>, or <emphasis role="strong">-p2</emphasis>, convert it to the quilt command using the <emphasis role="strong">deb3</emphasis> script in the <emphasis role="strong">quilt</emphasis> package.
zh: 如果它使用了其他的補丁系統，例如 <emphasis role="strong">dpatch</emphasis>、<emphasis role="strong">dbs</emphasis> 或者是帶有 <emphasis role="strong">-p0</emphasis>、<emphasis role="strong">-p1</emphasis>、<emphasis role="strong">-p2</emphasis> 引數的 <emphasis role="strong">cdbs</emphasis>。請使用 <emphasis role="strong">quilt</emphasis> 包中的 <emphasis role="strong">deb3</emphasis> 指令碼來轉換它。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: If it was packaged with the <emphasis role="strong">dh</emphasis> command with the “<emphasis role="strong">--with quilt</emphasis>” option or with the <emphasis role="strong">dh_quilt_patch</emphasis> and <emphasis role="strong">dh_quilt_unpatch</emphasis> commands, remove these and make it use the newer “<emphasis role="strong">3.0 (quilt)</emphasis>” source format.
zh: 如果它使用了帶有 “<emphasis role="strong">--with quilt</emphasis>” 選項的 <emphasis role="strong">dh</emphasis> 命令或者使用了 <emphasis role="strong">dh_quilt_patch</emphasis> 和 <emphasis role="strong">dh_quilt_unpatch</emphasis> 命令，請移除這些並且使其使用新的 “<emphasis role="strong">3.0 (quilt)</emphasis>” 格式。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: If you have a <emphasis role="strong">1.0</emphasis> source package without the <emphasis role="strong">foo.diff.gz</emphasis> file, you can update it to the newer “<emphasis role="strong">3.0 (native)</emphasis>” source format by creating <emphasis role="strong">debian/source/format</emphasis> with “<emphasis role="strong">3.0 (native)</emphasis>”. The rest of the <emphasis role="strong">debian/</emphasis>* files can just be copied.
zh: 如果您有一個不帶 <emphasis role="strong">foo.diff.gz</emphasis> 檔案的 <emphasis role="strong">1.0</emphasis> 格式的原始碼套件，您可以通過建立包含“<emphasis role="strong">3.0 (native)</emphasis>”的 <emphasis role="strong">debian/source/format</emphasis> 檔案，然後將其餘的 <emphasis role="strong">debian/</emphasis>* 檔案直接複製的方式來更新至新的“<emphasis role="strong">3.0 (native)</emphasis>”的原始碼格式。

note: type: Content of: <book><chapter><section><simpara>
en: You should check <ulink url="https://dep-team.pages.debian.net/">DEP - Debian Enhancement Proposals</ulink> and adopt ACCEPTED proposals.
zh: 您應該核對一下 <ulink url="https://dep-team.pages.debian.net/">DEP——Debian 增強提議</ulink> 並且採用已接受的提議。

note: type: Content of: <book><chapter><section><simpara>
en: See <ulink url="https://wiki.debian.org/Projects/DebSrc3.0">ProjectsDebSrc3.0</ulink> to check the support status of the new Debian source formats by the Debian tool chains.
zh: 參見 <ulink url="https://wiki.debian.org/Projects/DebSrc3.0">ProjectsDebSrc3.0</ulink> 以核對 Debian 工具鏈對新 Debian 原始碼格式的支援情況。

note: type: Content of: <book><chapter><section><simpara>
en: The Common Debian Build System (<emphasis role="strong">CDBS</emphasis>) is a wrapper system over the <emphasis role="strong">debhelper</emphasis> package.  The <emphasis role="strong">CDBS</emphasis> is based on the Makefile inclusion mechanism and configured by the <emphasis role="strong">DEB_</emphasis>* configuration variables set in the <emphasis role="strong">debian/rules</emphasis> file.
zh: Common Debian Build System （<emphasis role="strong">CDBS</emphasis>）是 <emphasis role="strong">debhelper</emphasis> 套件的包裝系統。<emphasis role="strong">CDBS</emphasis> 基於 Makefile 包含機制並且由 <emphasis role="strong">debian/rules</emphasis> 檔案中設定的 <emphasis role="strong">DEB_</emphasis>* 變數配置。

note: type: Content of: <book><chapter><section><simpara>
en: Before the introduction of the <emphasis role="strong">dh</emphasis> command to the <emphasis role="strong">debhelper</emphasis> package at the version 7, the <emphasis role="strong">CDBS</emphasis> was the only approach to create a simple and clean <emphasis role="strong">debian/rules</emphasis> file.
zh: 在將 <emphasis role="strong">dh</emphasis> 命令引入第七版的 <emphasis role="strong">debhelper</emphasis> 套件之前，<emphasis role="strong">CDBS</emphasis> 是建立簡單乾淨的 <emphasis role="strong">debian/rules</emphasis> 檔案的唯一方法。

note: type: Content of: <book><chapter><section><simpara>
en: For many simple packages, the <emphasis role="strong">dh</emphasis> command alone allows us to make a simple and clean <emphasis role="strong">debian/rules</emphasis> file now.  It is desirable to keep the build system simple and clean by not using the superfluous <emphasis role="strong">CDBS</emphasis>.
zh: 對於很多簡單的套件，現在 <emphasis role="strong">dh</emphasis> 命令使 <emphasis role="strong">debian/rules</emphasis> 檔案很簡潔，建議保持構建系統簡潔，而非使用冗長的 <emphasis role="strong">CDBS</emphasis>。

note: type: Content of: <book><chapter><section><note><simpara>
en: Neither “the <emphasis role="strong">CDBS</emphasis> magically does the job for me with less typing” nor “I don’t understand the new <emphasis role="strong">dh</emphasis> syntax” can be an excuse to keep using the <emphasis role="strong">CDBS</emphasis> system.
zh: “<emphasis role="strong">CDBS</emphasis> 神奇地讓我用更少的命令來完成工作”和“我不懂新的 <emphasis role="strong">dh</emphasis> 的語法”都不是您繼續使用舊的 <emphasis role="strong">CDBS</emphasis> 系統的藉口。

note: type: Content of: <book><chapter><section><simpara>
en: For some complicated packages such as GNOME related ones, the <emphasis role="strong">CDBS</emphasis> is leveraged to automate their uniform packaging by the current maintainers with justification.  If this is the case, please do not bother converting from the <emphasis role="strong">CDBS</emphasis> to the <emphasis role="strong">dh</emphasis> syntax.
zh: 對於一些複雜的套件，比如與 GNOME 相關的，當前的維護者有理由利用 <emphasis role="strong">CDBS</emphasis> 自動化完成他們的統一包裝。如果是這種情況，請不要費心從 <emphasis role="strong">CDBS</emphasis> 轉換為 <emphasis role="strong">dh</emphasis> 語法。

note: type: Content of: <book><chapter><section><note><simpara>
en: If you are working with a <ulink url="https://wiki.debian.org/Teams">team</ulink> of maintainers, please follow the established practice of the team.
zh: 如果您正在與維護 <ulink url="https://wiki.debian.org/Teams">團隊</ulink> 合作，請遵循團隊的既定慣例。

note: type: Content of: <book><chapter><section><simpara>
en: When converting packages from the <emphasis role="strong">CDBS</emphasis> to the <emphasis role="strong">dh</emphasis> syntax, please use the following as your reference:
zh: 將套件從 <emphasis role="strong">CDBS</emphasis> 轉換為 <emphasis role="strong">dh</emphasis> 語法時，請使用以下內容作為參考：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="http://cdbs-doc.duckcorp.org/en/cdbs-doc.xhtml">CDBS Documentation</ulink>
zh: <ulink url="http://cdbs-doc.duckcorp.org/en/cdbs-doc.xhtml">CDBS 文件</ulink>

note: type: Content of: <book><chapter><section><title>
en: Build under UTF-8
zh: 在 UTF-8 環境下構建

note: type: Content of: <book><chapter><section><simpara>
en: The default locale of the build environment is <emphasis role="strong">C</emphasis>.
zh: 構建環境的預設語言環境是 <emphasis role="strong">C</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: Some programs such as the <emphasis role="strong">read</emphasis> function of Python3 change their behavior depending on the locale.
zh: 某些程式（如 Python3 的 <emphasis role="strong">read</emphasis> 函式）會根據區域設定改變行為。

note: type: Content of: <book><chapter><section><simpara>
en: Adding the following code to the <emphasis role="strong">debian/rules</emphasis> file ensures building the program under the <emphasis role="strong">C.UTF-8</emphasis> locale.
zh: 新增以下程式碼到 <emphasis role="strong">debian/rules</emphasis> 檔案可以確保程式使用 <emphasis role="strong">C.UTF-8</emphasis> 的區域語言設定（locale）進行構建。

note: type: Content of: <book><chapter><section><title>
en: UTF-8 conversion
zh: UTF-8 轉換

note: type: Content of: <book><chapter><section><simpara>
en: If upstream documents are encoded in old encoding schemes, converting them to <ulink url="https://en.wikipedia.org/wiki/UTF-8">UTF-8</ulink> is a good idea.
zh: 如果上游文件是用舊編碼方案編碼的，那麼將它們轉換為 <ulink url="https://en.wikipedia.org/wiki/UTF-8">UTF-8</ulink> 是個好主意。

note: type: Content of: <book><chapter><section><simpara>
en: Use the <emphasis role="strong">iconv</emphasis> command in the <emphasis role="strong">libc-bin</emphasis> package to convert encodings of plain text files.
zh: 請使用 <emphasis role="strong">libc-bin</emphasis> 包中的 <emphasis role="strong">iconv</emphasis> 命令來轉換純文字檔案的編碼。

note: type: Content of: <book><chapter><section><simpara>
en: Use <emphasis role="strong">w3m</emphasis>(1) to convert from HTML files to UTF-8 plain text files. When you do this, make sure to execute it under UTF-8 locale.
zh: 使用 <emphasis role="strong">w3m</emphasis>(1) 將 HTML 檔案轉換為 UTF-8 純文字檔案。 執行此操作時，請確保在 UTF-8 語言環境下執行它。

note: type: Content of: <book><chapter><section><simpara>
en: Run these scripts in the <emphasis role="strong">override_dh_</emphasis>* target of the <emphasis role="strong">debian/rules</emphasis> file.
zh: 在 <emphasis role="strong">debian/rules</emphasis> 檔案的 <emphasis role="strong">override_dh_</emphasis>* 目標中執行這些指令碼。

note: type: Content of: <book><chapter><section><title>
en: Upload <emphasis role="strong">orig.tar.gz</emphasis>
zh: 上傳 <emphasis role="strong">orig.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><simpara>
en: When you first upload the package to the archive, you need to include the original <emphasis role="strong">orig.tar.gz</emphasis> source, too.
zh: 當您第一次對歸檔上傳套件時，您還需要包含原始的 <emphasis role="strong">orig.tar.gz</emphasis> 原始碼。

note: type: Content of: <book><chapter><section><simpara>
en: If the Debian revision number of the package is either <emphasis role="strong">1</emphasis> or <emphasis role="strong">0</emphasis>, this is the default.  Otherwise, you must provide the <emphasis role="strong">dpkg-buildpackage</emphasis> option <emphasis role="strong">-sa</emphasis> to the <emphasis role="strong">dpkg-buildpackage</emphasis> command.
zh: 如果 Debian 修訂碼是 <emphasis role="strong">1</emphasis> 或者 <emphasis role="strong">0</emphasis>，這都是預設的。否則，您必須使用帶有 <emphasis role="strong">-sa</emphasis> 選項的 <emphasis role="strong">dpkg-buildpackage</emphasis> 命令。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: For <emphasis role="strong">gbp buildpackage</emphasis>, edit the <emphasis role="strong">~/.gbp.conf</emphasis> file.
zh: 對於 <emphasis role="strong">gbp buildpackage</emphasis>，請編輯 <emphasis role="strong">~/.gbp.conf</emphasis> 檔案。

note: type: Content of: <book><chapter><section><tip><simpara>
en: On the other hand, the <emphasis role="strong">-sd</emphasis> option will force the exclusion of the original <emphasis role="strong">orig.tar.gz</emphasis> source.
zh: 另一方面，<emphasis role="strong">-sd</emphasis> 選項將會強制排除原始的 <emphasis role="strong">orig.tar.gz</emphasis> 原始碼。

note: type: Content of: <book><chapter><section><tip><simpara>
en: Security uploads require including the <emphasis role="strong">orig.tar.gz</emphasis> file.
zh: 新增至 <emphasis role="strong">~/.bashrc</emphasis> 檔案。

note: type: Content of: <book><chapter><section><title>
en: Skipped uploads
zh: 跳過的上傳

note: type: Content of: <book><chapter><section><simpara>
en: If you created multiple entries in the <emphasis role="strong">debian/changelog</emphasis> while skipping uploads, you must create a proper <emphasis role="strong">*_.changes</emphasis> file which includes all changes since the last upload. This can be done by specifying the dpkg-buildpackage option <emphasis role="strong">-v</emphasis> with the last uploaded version, e.g., <emphasis>1.2</emphasis>.
zh: 如果當跳過上傳時，你在 <emphasis role="strong">debian/changelog</emphasis> 中建立了多個條目，你必須建立一個包含自上次上傳以來所有變更的 <emphasis role="strong">debian/changelog</emphasis> 檔案。這可以通過指定 dpkg-buildpackage 選項 <emphasis role="strong">-v</emphasis> 以及上次上傳的版本號，比如 <emphasis>1.2</emphasis> 來完成。

note: type: Content of: <book><chapter><section><title>
en: Advanced packaging
zh: 高階打包

note: type: Content of: <book><chapter><section><simpara>
en: Hints for the following can be found in the <emphasis role="strong">debhelper</emphasis>(7) manpage:
zh: 關於以下內容的 可以在 <emphasis role="strong">debhelper</emphasis>(7) 手冊頁中找到：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: differences of the <emphasis role="strong">debhelper</emphasis> tool behavior under “<emphasis role="strong">compat</emphasis> &lt;= 8”
zh: <emphasis role="strong">debhelper</emphasis> 工具在 “<emphasis role="strong">compat</emphasis> &lt;= 8” 選項下不同的行為

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: building several binary packages with several different build conditions
zh: 在數種不同構建條件下構建多種二進位制包

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: making multiple copies of the upstream source
zh: 製作上游原始碼的多個副本

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: invoking multiple “<emphasis role="strong">dh_auto_configure -S …</emphasis>” commands in the <emphasis role="strong">override_dh_auto_configure</emphasis> target
zh: 在 <emphasis role="strong">override_dh_auto_configure</emphasis> 目標中呼叫多個 “<emphasis role="strong">dh_auto_configure -S …</emphasis>” 指令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: invoking multiple “<emphasis role="strong">dh_auto_build -S …</emphasis>” commands in the <emphasis role="strong">override_dh_auto_build</emphasis> target
zh: 在 <emphasis role="strong">override_dh_auto_build</emphasis> 目標中呼叫多個 “<emphasis role="strong">dh_auto_build -S …</emphasis>” 指令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: invoking multiple “<emphasis role="strong">dh_auto_install -S …</emphasis>” commands in the <emphasis role="strong">override_dh_auto_install</emphasis> target
zh: 在 <emphasis role="strong">override_dh_auto_install</emphasis> 目標中呼叫多個 “<emphasis role="strong">dh_auto_install -S …</emphasis>” 指令

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: excluding some packages for the bootstrapping process (see also <ulink url="https://wiki.debian.org/BuildProfileSpec">BuildProfileSpec</ulink>)
zh: 從引導程序中排除某些包（參見 <ulink url="https://wiki.debian.org/BuildProfileSpec">BuildProfileSpec</ulink>）

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: adding the <emphasis role="strong">Build-Profiles</emphasis> fields in binary package stanzas in <emphasis role="strong">debian/control</emphasis>
zh: 在 <emphasis role="strong">debian/control</emphasis> 中的二進位制包節中新增 <emphasis role="strong">Build-Profiles</emphasis> 欄位

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: building packages with the <emphasis role="strong">DEB_BUILD_PROFILES</emphasis> environment variable set to the pertinent profile name
zh: 在 <emphasis role="strong">DEB_BUILD_PROFILES</emphasis> 環境變數設定成相關配置檔名的條件下構建套件

note: type: Content of: <book><chapter><section><simpara>
en: Hints for the following can be found in the <emphasis role="strong">dpkg-source</emphasis>(1) manpage:
zh: 關於以下內容的提示可以在 <emphasis role="strong">dpkg-source</emphasis>(1) 手冊頁中找到：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: naming convention for multiple upstream source tarballs
zh: 多個上游原始碼套件的命名約定

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis>packagename_version</emphasis><emphasis role="strong">.orig.tar.gz</emphasis>
zh: <emphasis>套件名_版本</emphasis><emphasis role="strong">.orig.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: <emphasis>packagename_version</emphasis><emphasis role="strong">.orig-</emphasis><emphasis>componentname</emphasis><emphasis role="strong">.tar.gz</emphasis>
zh: <emphasis>套件名_版本</emphasis><emphasis role="strong">.orig-</emphasis><emphasis>部件名</emphasis><emphasis role="strong">.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: recording the Debian changes to the upstream source package
zh: 將 Debian 更改記錄到上游原始碼套件中

note: type: Content of: <book><chapter><section><title>
en: Other distros
zh: 其他發行版

note: type: Content of: <book><chapter><section><simpara>
en: Although the upstream tarball has all the information to build the Debian package, it is not always easy to figure out which combination of options to use.
zh: 儘管上游的原始碼有著所有構建 Debian 套件所需的資訊，找出使用何種選項的組合仍然不是一件簡單的事。

note: type: Content of: <book><chapter><section><simpara>
en: Also, the upstream package may be more focused on feature enhancements and may be less eager about backward compatibilities etc., which are an important aspect of Debian packaging practice.
zh: 此外，上游的包可能更專注於功能的增強，而並不那麼重視向後相容性等特性，這是 Debian 打包實踐中的一個重要方面。

note: type: Content of: <book><chapter><section><simpara>
en: The leveraging of information from other distributions is an option to address the above issues.
zh: 利用其他發行版的資訊是解決上述問題的一種選擇。

note: type: Content of: <book><chapter><section><simpara>
en: If the other distribution of interest is a Debian derivative one, it is trivial to reuse it.
zh: 如果其他發行版是由 Debian 派生的，重新使用它是沒有價值的。

note: type: Content of: <book><chapter><section><simpara>
en: If the other distribution of interest is an <ulink url="https://en.wikipedia.org/wiki/RPM_Package_Manager">RPM</ulink> based distribution, see <ulink url="https://wiki.debian.org/Repackage_srcrpm">Repackage src.rpm</ulink>.
zh: 如果其他發行版是基於 <ulink url="https://en.wikipedia.org/wiki/RPM_Package_Manager">RPM</ulink> 的發行版，請參見 <ulink url="https://wiki.debian.org/Repackage_srcrpm">Repackage src.rpm</ulink>。

note: type: Content of: <book><chapter><section><simpara>
en: Downloading and opening of the <emphasis role="strong">src.rpm</emphasis> file can be done with the <emphasis role="strong">rget</emphasis> command.  (Place the <emphasis role="strong">rget</emphasis> script in your PATH.)
zh: 通過 <emphasis role="strong">rget</emphasis> 命令，可以下載並開啟 <emphasis role="strong">src.rpm</emphasis>檔案。（請將 <emphasis role="strong">rget</emphasis> 指令碼新增至 PATH 中）

note: type: Content of: <book><chapter><section><formalpara><title>
en: rget script
zh: rget 指令碼

note: type: Content of: <book><chapter><section><simpara>
en: Many upstream tarballs contain the SPEC file named as <emphasis>packagename</emphasis>.<emphasis role="strong">spec</emphasis> or <emphasis>packagename</emphasis>.<emphasis role="strong">spec.in</emphasis> used by the RPM system.  This can be used as the baseline for the Debian package, too.
zh: 許多上游原始碼套件包含 RPM 系統使用的、以 <emphasis>packagename</emphasis>.<emphasis role="strong">spec</emphasis> 或者 <emphasis>packagename</emphasis>.<emphasis role="strong">spec.in</emphasis> 命名的SPEC 檔案。這可以被用做 Debian 套件的基點。

note: type: Content of: <book><chapter><section><title>
en: Debug
zh: 除錯

note: type: Content of: <book><chapter><section><simpara>
en: When you face build problems or core dumps of generated binary programs, you need to resolve them yourself.  That’s <emphasis role="strong">debug</emphasis>.
zh: 當您遇到構建問題或者生成的二進位制程式核心轉儲時，您需要自行解決他們。這就是<emphasis role="strong">除錯（debug）</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: This is too deep a topic to describe here.  So, let me just list few pointers and hints for some typical debug tools.
zh: This is too deep a topic to describe here. So, let me just list few pointers and hints for some typical debug tools.

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <ulink url="https://en.wikipedia.org/wiki/Core_dump">core dump</ulink>
zh: <ulink url="https://en.wikipedia.org/wiki/Core_dump">核心轉儲</ulink>

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Update the “<emphasis role="strong">/etc/security/limits.conf</emphasis>” file to include the following:
zh: 更新 “<emphasis role="strong">/etc/security/limits.conf</emphasis>” 檔案來包含以下程式碼：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">ulimit -c unlimited</emphasis>” in <emphasis role="strong">~/.bashrc</emphasis>
zh: 在 <emphasis role="strong">~/.bashrc</emphasis> 中新增“<emphasis role="strong">ulimit -c unlimited</emphasis>”

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">ulimit -a</emphasis>” to check
zh: 使用 “<emphasis role="strong">ulimit -a</emphasis>” 來檢查

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Press <emphasis role="strong">Ctrl-\</emphasis> or “<emphasis role="strong">kill -ABRT</emphasis> <emphasis>PID”</emphasis> to make a core dump file
zh: 按下 <emphasis role="strong">Ctrl-\</emphasis> 或者“<emphasis role="strong">kill -ABRT</emphasis> <emphasis>PID”</emphasis> 來建立一個核心轉儲檔案

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: “Debugging with GDB” in <emphasis role="strong">/usr/share/doc/gdb-doc/html/gdb/index.html</emphasis>
zh: 參見 <emphasis role="strong">/usr/share/doc/gdb-doc/html/gdb/index.html</emphasis> 中的 “Debugging with GDB”

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">strace</emphasis> - Trace system calls and signals
zh: <emphasis role="strong">strace</emphasis> - 追蹤系統呼叫和訊號

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Use <emphasis role="strong">strace-graph</emphasis> script found in <emphasis role="strong">/usr/share/doc/strace/examples/</emphasis> to make a nice tree view
zh: 使用 <emphasis role="strong">/usr/share/doc/strace/examples/</emphasis> 中的 <emphasis role="strong">strace-graph</emphasis> 指令碼來建立一個好看的樹形圖

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">ltrace</emphasis> - Trace library calls
zh: <emphasis role="strong">ltrace</emphasis> - 追蹤程式庫呼叫

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">sh -n</emphasis> <emphasis>script.sh”</emphasis> - Syntax check of a Shell script
zh: “<emphasis role="strong">sh -n</emphasis> <emphasis>script.sh”</emphasis> - Shell 指令碼的語法檢查

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">sh -x</emphasis> <emphasis>script.sh”</emphasis> - Trace a Shell script
zh: “<emphasis role="strong">sh -x</emphasis> <emphasis>script.sh”</emphasis> - 追蹤 Shell 指令碼

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">python -m py_compile</emphasis> <emphasis>script.py”</emphasis> - Syntax check of a Python script
zh: “<emphasis role="strong">python -m py_compile</emphasis> <emphasis>script.py”</emphasis> - Python 指令碼的語法檢查

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">python -mtrace --trace</emphasis> <emphasis>script.py”</emphasis> - Trace a Python script
zh: “<emphasis role="strong">python -mtrace --trace</emphasis> <emphasis>script.py”</emphasis> - 追蹤 Python 指令碼

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">perl -I ../libpath -c</emphasis> <emphasis>script.pl”</emphasis> - Syntax check of a Perl script
zh: “<emphasis role="strong">perl -I ../libpath -c</emphasis> <emphasis>script.pl”</emphasis> - Perl 指令碼的語法檢查

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: “<emphasis role="strong">perl -d:Trace</emphasis> <emphasis>script.pl”</emphasis> - Trace a Perl script
zh: “<emphasis role="strong">perl -d:Trace</emphasis> <emphasis>script.pl”</emphasis> - 追蹤 Perl 指令碼

note: type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: Install the <emphasis role="strong">libterm-readline-gnu-perl</emphasis> package or its equivalent to add input line editing capability with history support.
zh: 安裝 <emphasis role="strong">libterm-readline-gnu-perl</emphasis> 套件或者同類型軟體來新增輸入行編輯功能與歷史記錄支援。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">lsof</emphasis> - List open files by processes
zh: <emphasis role="strong">lsof</emphasis> - 按程序列出開啟的檔案

note: type: Content of: <book><chapter><section><tip><simpara>
en: The <emphasis role="strong">script</emphasis> command records console outputs.
zh: <emphasis role="strong">script</emphasis> 命令能幫助記錄控制檯輸出。

note: type: Content of: <book><chapter><section><tip><simpara>
en: The <emphasis role="strong">screen</emphasis> and <emphasis role="strong">tmux</emphasis> commands used with the <emphasis role="strong">ssh</emphasis> command offer secure and robust remote connection terminals.
zh: 在 <emphasis role="strong">ssh</emphasis> 命令中搭配使用 <emphasis role="strong">screen</emphasis> 和 <emphasis role="strong">tmux</emphasis> 命令，能夠提供安全並且強健的遠端連線終端。

note: type: Content of: <book><chapter><section><tip><simpara>
en: A Python- and Shell-like REPL (=READ + EVAL + PRINT + LOOP) environment for Perl is offered by the <emphasis role="strong">reply</emphasis> command from the <emphasis role="strong">libreply-perl</emphasis> (new) package and the <emphasis role="strong">re.pl</emphasis> command from the <emphasis role="strong">libdevel-repl-perl</emphasis> (old) package.
zh: <emphasis role="strong">libreply-perl</emphasis>（新的）套件和來自 <emphasis role="strong">libdevel-repl-perl</emphasis>（舊的）套件的 <emphasis role="strong">re.pl</emphasis> 命令為 Perl 提供了一個類似 Python 和 Shell 的 REPL (=READ + EVAL + PRINT + LOOP) 環境。

note: type: Content of: <book><chapter><section><tip><simpara>
en: The <emphasis role="strong">rlwrap</emphasis> and <emphasis role="strong">rlfe</emphasis> commands add input line editing capability with history support to any interactive commands.  E.g. “<emphasis role="strong">rlwrap dash -i</emphasis>”' .
zh: <emphasis role="strong">rlwrap</emphasis> 和 <emphasis role="strong">rlfe</emphasis> 命令為所有互動命令提供了輸入行編輯功能。例如 “<emphasis role="strong">rlwrap dash -i</emphasis>”。

note: type: Content of: <book><chapter><title>
en: More Examples
zh: 更多範例

note: type: Content of: <book><chapter><simpara>
en: There is an old Latin saying: “<emphasis role="strong">fabricando fit faber</emphasis>” (“practice makes perfect”).
zh: 有一句古老的拉丁諺語：“<emphasis role="strong">fabricando fit faber</emphasis>”（“熟能生巧”）。

note: type: Content of: <book><chapter><simpara>
en: It is highly recommended to practice and experiment with all the steps of Debian packaging with simple packages.  This chapter provides you with many upstream cases for your practice.
zh: 強烈建議使用簡單的包來練習和試驗 Debian 打包的所有步驟。本章為您的練習提供了許多上游案例。

note: type: Content of: <book><chapter><simpara>
en: This should also serve as introductory examples for many programing topics.
zh: 這也可以作為許多程式設計主題的介紹範例。

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: Programing in the POSIX shell, Python3, and C.
zh: 在 POSIX shell，Python3 和 C 中程式設計。

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: Method to create a desktop GUI program launcher with icon graphics.
zh: 使用圖示圖形建立桌面 GUI 程式啟動器的方法。

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: Conversion of a command from <ulink url="https://en.wikipedia.org/wiki/Command-line_interface">CLI</ulink> to <ulink url="https://en.wikipedia.org/wiki/Graphical_user_interface">GUI</ulink>.
zh: 將 <ulink url="https://en.wikipedia.org/wiki/Command-line_interface">命令列介面</ulink> 命令轉換為 <ulink url="https://en.wikipedia.org/wiki/Graphical_user_interface">圖形介面</ulink> 命令。

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: Conversion of a program to use <emphasis role="strong">gettext</emphasis> for <ulink url="http://en.wikipedia.org/wiki/Internationalization_and_localization">internationalization and localization</ulink>: POSIX shell, Python3, and C sources.
zh: 轉化程式以使用 <emphasis role="strong">gettext</emphasis> 來為 POSIX shell、Python3 和 C 原始碼的程式進行 <ulink url="http://en.wikipedia.org/wiki/Internationalization_and_localization">國際化和本地化</ulink>。

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: Overview of many build systems: Makefile, Python distutils, Autotools, and CMake.
zh: 構建系統概述：Makefile、Python distutils、Autotools 以及 CMake。

note: type: Content of: <book><chapter><simpara>
en: Please note that Debian takes a few things seriously:
zh: 請注意，Debian 對以下事項非常注意：

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: Free software (a.k.a. Libre software)
zh: 自由軟體

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: Stability and security of OS
zh: 作業系統的穩定性與安全性

note: type: Content of: <book><chapter><itemizedlist><listitem><simpara>
en: Universal OS realized via:
zh: 通過以下方式以實現通用作業系統：

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: free choice for upstream sources,
zh: 上游原始碼的自由選擇，

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: free choice of CPU architectures, and
zh: CPU架構的自由選擇，以及

note: type: Content of: <book><chapter><itemizedlist><listitem><itemizedlist><listitem><simpara>
en: free choice of UI languages.
zh: 使用者介面語言的自由選擇。

note: type: Content of: <book><chapter><simpara>
en: The typical packaging example presented in <xref linkend="simple"/> is the prerequisite for this chapter.
zh: 在 <xref linkend="simple"/> 中介紹的典型打包範例是本章節的先決條件。

note: type: Content of: <book><chapter><simpara>
en: Some details are intentionally left vague in the following sections.  Please try to read the pertinent documentation and practice yourself to find them out.
zh: 在以下數小節中，有些細節被刻意模糊。請嘗試閱讀相關檔案，並且嘗試自行釐清它們。

note: type: Content of: <book><chapter><tip><simpara>
en: The best source of a packaging example is the current Debian archive itself.  Please use the “<ulink url="https://codesearch.debian.net/">Debian Code Search</ulink>” service to find pertinent examples.
zh: 打包範例的最佳來源就是目前的 Debian 歸檔本身。請使用 “<ulink url="https://codesearch.debian.net/">Debian 程式碼搜尋</ulink>” 服務來查找相關範例。

note: type: Content of: <book><chapter><section><title>
en: Cherry-pick templates
zh: 挑選最好的模板

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a zero content source on an empty directory.
zh: 以下是一個從空目錄由零開始構建簡單的 Debian 套件的範例。

note: type: Content of: <book><chapter><section><simpara>
en: This is a good platform to get all the template files without making a mess in the upstream source tree you are working on.
zh: 這是一個很棒的平臺，可以使您獲得所有的模板檔案，而不會使您正在處理的上游原始碼樹變得一團糟。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this empty directory to be <emphasis role="strong">debhello-0.1</emphasis>.
zh: 讓我們假設這個空目錄為 <emphasis role="strong">debhello-0.1</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s generate the maximum amount of template files by specifying the <emphasis role="strong">-x4</emphasis> option.
zh: 讓我們通過指定 <emphasis role="strong">-x4</emphasis> 選項來生成最大數量的模板檔案。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s also use the “<emphasis role="strong">-p</emphasis> <emphasis>debhello</emphasis> <emphasis role="strong">-t -u</emphasis> <emphasis>0.1</emphasis> <emphasis role="strong">-r</emphasis> <emphasis>1”</emphasis> options to make the missing upstream tarball.
zh: 此外，讓我們使用 “<emphasis role="strong">-p</emphasis> <emphasis>debhello</emphasis> <emphasis role="strong">-t -u</emphasis> <emphasis>0.1</emphasis> <emphasis role="strong">-r</emphasis> <emphasis>1”</emphasis> 選項來製作遺失的上游原始碼套件。

note: type: Content of: <book><chapter><section><simpara>
en: Now you can copy any of these generated template files in the <emphasis>debhello-0.1/</emphasis><emphasis role="strong">debian/</emphasis> directory to your package as needed while renaming them as needed.
zh: 現在，您可以複製 <emphasis>debhello-0.1/</emphasis><emphasis role="strong">debian/</emphasis> 目錄下所有生成的模板檔案到您的套件中。

note: type: Content of: <book><chapter><section><tip><simpara>
en: The generated template files can be made more verbose by invoking the <emphasis role="strong">debmake</emphasis> command with the <emphasis role="strong">-T</emphasis> option (tutorial mode).
zh: 通過使用 <emphasis role="strong">-T</emphasis> 選項（教材模式）呼叫 <emphasis role="strong">debmake</emphasis> 命令，可以使生成的模板檔案更加詳細。

note: type: Content of: <book><chapter><section><title>
en: No Makefile (shell, CLI)
zh: 無 Makefile（shell，命令列介面）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a POSIX shell CLI program without its build system.
zh: 此處是一個從 POSIX shell 命令列介面程式建立簡單的 Debian 套件的範例，我們假設它沒有使用任何構建系統。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-0.2.tar.gz</emphasis>.
zh: 讓我們假設上游的原始碼套件為 <emphasis role="strong">debhello-0.2.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: This type of source has no automated means and files must be installed manually.
zh: 此類原始碼不具有自動化方法，所以必須手動安裝檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-0.2.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-0.2.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><simpara>
en: Here, the POSIX shell script <emphasis role="strong">hello</emphasis> is a very simple one.
zh: 這裡的 POSIX shell 指令碼 <emphasis role="strong">hello</emphasis> 非常的簡單。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">hello</emphasis> (v=0.2)
zh: <emphasis role="strong">hello</emphasis>（v=0.2）

note: type: Content of: <book><chapter><section><simpara>
en: Here, <emphasis role="strong">hello.desktop</emphasis> supports the <ulink url="https://www.freedesktop.org/wiki/Specifications/desktop-entry-spec/">Desktop Entry Specification</ulink>.
zh: 此處的 <emphasis role="strong">hello.desktop</emphasis> 支援 <ulink url="https://www.freedesktop.org/wiki/Specifications/desktop-entry-spec/">桌面項（Desktop Entry）規範</ulink>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">hello.desktop</emphasis> (v=0.2)
zh: <emphasis role="strong">hello.desktop</emphasis>（v=0.2）

note: type: Content of: <book><chapter><section><simpara>
en: Here, <emphasis role="strong">hello.png</emphasis> is the icon graphics file.
zh: 此處的 <emphasis role="strong">hello.png</emphasis> 是圖示的影象檔案。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s package this with the <emphasis role="strong">debmake</emphasis> command.  Here, the <emphasis role="strong">-b':sh'</emphasis> option is used to specify that the generated binary package is a shell script.
zh: 讓我們使用 <emphasis role="strong">debmake</emphasis> 命令來打包。這裡使用 <emphasis role="strong">-b':sh'</emphasis> 選項來指明生成的二進位制包是一個 shell 指令碼。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s inspect notable template files generated.
zh: 讓我們來檢查一下自動產生的模板檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The source tree after the basic <emphasis role="strong">debmake</emphasis> execution. (v=0.2)
zh: 執行基本的 <emphasis role="strong">debmake</emphasis> 命令後的原始碼樹。（v=0.2）

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file, v=0.2):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案，v=0.2）：

note: type: Content of: <book><chapter><section><simpara>
en: This is essentially the standard <emphasis role="strong">debian/rules</emphasis> file with the <emphasis role="strong">dh</emphasis> command. Since this is the script package, this template <emphasis role="strong">debian/rules</emphasis> file has no build flag related contents.
zh: 這基本上是帶有 <emphasis role="strong">dh</emphasis> 命令的標準 <emphasis role="strong">debian/rules</emphasis> 檔案。因為這是個指令碼套件，所以這個 <emphasis role="strong">debian/rules</emphasis> 模板檔案沒有與構建標記（build flag）相關的內容。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (template file, v=0.2):
zh: <emphasis role="strong">debian/control</emphasis>（模板檔案，v=0.2）：

note: type: Content of: <book><chapter><section><simpara>
en: Since this is the shell script package, the <emphasis role="strong">debmake</emphasis> command sets “<emphasis role="strong">Architecture: all</emphasis>” and “<emphasis role="strong">Multi-Arch: foreign</emphasis>”.  Also, it sets required <emphasis role="strong">substvar</emphasis> parameters as “<emphasis role="strong">Depends: ${misc:Depends}</emphasis>”.  These are explained in <xref linkend="basics"/>.
zh: 因為這是個 shell 指令碼包，所以 <emphasis role="strong">debmake</emphasis> 命令設定了“<emphasis role="strong">Architecture: all</emphasis>”和“<emphasis role="strong">Multi-Arch: foreign</emphasis>”。此外，它還將所需的 <emphasis role="strong">substvar</emphasis> 引數設定為“<emphasis role="strong">Depends: ${misc:Depends}</emphasis>”。<xref linkend="basics"/> 對此進行了解釋。

note: type: Content of: <book><chapter><section><simpara>
en: Since this upstream source lacks the upstream <emphasis role="strong">Makefile</emphasis>, that functionality needs to be provided by the maintainer.  This upstream source contains only a script file and data files and no C source files; the <emphasis role="strong">build</emphasis> process can be skipped but the <emphasis role="strong">install</emphasis> process needs to be implemented.  For this case, this is achieved cleanly by adding the <emphasis role="strong">debian/install</emphasis> and <emphasis role="strong">debian/manpages</emphasis> files without complicating the <emphasis role="strong">debian/rules</emphasis> file.
zh: 因為這個上游原始碼缺少上游的 <emphasis role="strong">Makefile</emphasis>，所以這個功能需要由維護者提供。這個上游原始碼僅包含指令碼檔案和資料檔案，沒有 C 的源碼檔案，因此 <emphasis role="strong">構建（build）</emphasis> 的過程可以被跳過，但是需要實現 <emphasis role="strong">安裝（install）</emphasis> 的過程。對於這種情況，通過新增 <emphasis role="strong">debian/install</emphasis> 和 <emphasis role="strong">debian/manpages</emphasis> 檔案可以很好地實現這一功能，且不會使 <emphasis role="strong">debian/rules</emphasis> 檔案變得複雜。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s make this Debian package better as the maintainer.
zh: 作為維護者，我們要把這個 Debian 套件做得更好。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=0.2):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=0.2）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (maintainer version, v=0.2):
zh: <emphasis role="strong">debian/control</emphasis>（維護者版本，v=0.2）：

note: type: Content of: <book><chapter><section><warning><simpara>
en: If you leave “<emphasis role="strong">Section: unknown</emphasis>” in the template <emphasis role="strong">debian/control</emphasis> file unchanged, the <emphasis role="strong">lintian</emphasis> error may cause a build failure.
zh: 如果您對 <emphasis role="strong">debian/control</emphasis> 模板檔案中的“<emphasis role="strong">Section: unknown</emphasis>”部分不作修改的話，後續的 <emphasis role="strong">lintian</emphasis> 錯誤可能導致構建失敗。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/install</emphasis> (maintainer version, v=0.2):
zh: <emphasis role="strong">debian/install</emphasis>（維護者版本，v=0.2）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/manpages</emphasis> (maintainer version, v=0.2):
zh: <emphasis role="strong">debian/manpages</emphasis>（維護者版本，v=0.2）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: Template files under <emphasis role="strong">debian/</emphasis>. (v=0.2):
zh: <emphasis role="strong">debian/</emphasis> 目錄下的模板檔案。（v=0.2）：

note: type: Content of: <book><chapter><section><simpara>
en: You can create a non-native Debian package using the <emphasis role="strong">debuild</emphasis> command (or its equivalents) in this source tree.  The command output is very verbose and explains what it does as follows.
zh: 您可以在此原始碼樹中使用 <emphasis role="strong">debuild</emphasis> 命令（或其等效命令）建立非原生的 Debian 套件。如下所示，該命令的輸出非常詳細，並且解釋了它所做的事。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated files of <emphasis role="strong">debhello</emphasis> version <emphasis role="strong">0.2</emphasis> by the <emphasis role="strong">debuild</emphasis> command:
zh: 通過 <emphasis role="strong">debuild</emphasis> 生成的第 <emphasis role="strong">0.2</emphasis> 版的 <emphasis role="strong">debhello</emphasis> 檔案：

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.2.orig.tar.gz</emphasis> file is a symlink to the upstream tarball.
zh: <emphasis role="strong">debhello_0.2.orig.tar.gz</emphasis> 是指向上游原始碼包的符號連結。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.2-1.debian.tar.xz</emphasis> file contains the maintainer generated contents.
zh: <emphasis role="strong">debhello_0.2-1.debian.tar.xz</emphasis> 包含了維護者生成的內容。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.2-1.dsc</emphasis> file is the meta data file for the Debian source package.
zh: <emphasis role="strong">debhello_0.2-1.dsc</emphasis> 是 Debian 原始碼套件的元資料檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.2-1_all.deb</emphasis> file is the Debian binary package.
zh: The <emphasis role="strong">debhello_0.2-1_all.deb</emphasis> 是 Debian 二進位制套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.2-1_amd64.build</emphasis> file is the build log file.
zh: <emphasis role="strong">debhello_0.2-1_amd64.build</emphasis> 是 Debian 二進位制套件。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.2-1_amd64.buildinfo</emphasis> file is the meta data file generated by <emphasis role="strong">dpkg-genbuildinfo</emphasis>(1).
zh: <emphasis role="strong">debhello_0.2-1_amd64.buildinfo</emphasis> 檔案是由 <emphasis role="strong">dpkg-genbuildinfo</emphasis>(1) 自動生成的元檔案。

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: The <emphasis role="strong">debhello_0.2-1_amd64.changes</emphasis> file is the meta data file for the Debian binary package.
zh: <emphasis role="strong">debhello_0.2-1_amd64.changes</emphasis> 是 Debian 二進位制套件的元資料檔案。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debhello_0.2-1.debian.tar.xz</emphasis> file contains the Debian changes to the upstream source as follows.
zh: <emphasis role="strong">debhello_0.2-1.debian.tar.xz</emphasis> 包含了 Debian 對上游原始碼的修改，具體如下所示。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The compressed archive contents of <emphasis role="strong">debhello_0.2-1.debian.tar.xz</emphasis>:
zh: 壓縮過的歸檔檔案 <emphasis role="strong">debhello_0.2-1.debian.tar.xz</emphasis> 中的內容物：

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debhello_0.2-1_amd64.deb</emphasis> file contains the files to be installed as follows.
zh: <emphasis role="strong">debhello_0.2-1_amd64.deb</emphasis> 包含了將要安裝至系統中的檔案，如下所示。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The binary package contents of <emphasis role="strong">debhello_0.2-1_all.deb</emphasis>:
zh: <emphasis role="strong">debhello_0.2-1_all.deb</emphasis> 二進位制套件中的內容：

note: type: Content of: <book><chapter><section><simpara>
en: Here is the generated dependency list of <emphasis role="strong">debhello_0.2-1_all.deb</emphasis>.
zh: 此處是生成的 <emphasis role="strong">debhello_0.2-1_all.deb</emphasis> 的依賴項列表。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated dependency list of <emphasis role="strong">debhello_0.2-1_all.deb</emphasis>:
zh: <emphasis role="strong">debhello_0.2-1_all.deb</emphasis> 的依賴項列表：

note: type: Content of: <book><chapter><section><title>
en: Makefile (shell, CLI)
zh: Makefile（shell，命令列介面）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a POSIX shell CLI program using the <emphasis role="strong">Makefile</emphasis> as its build system.
zh: 下面是從 POSIX shell 命令列介面程式建立簡單的 Debian 套件的範例，我們假設它使用 <emphasis role="strong">Makefile</emphasis> 作為構建系統。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume its upstream tarball to be <emphasis role="strong">debhello-1.0.tar.gz</emphasis>.
zh: 讓我們假設上游的原始碼套件為 <emphasis role="strong">debhello-1.0.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s get the source and make the Debian package.
zh: 讓我們取得原始碼並製作 Debian 套件。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-1.0.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-1.0.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><simpara>
en: Here, the <emphasis role="strong">Makefile</emphasis> uses <emphasis role="strong">$(DESTDIR)</emphasis> and <emphasis role="strong">$(prefix)</emphasis> properly.  All other files are the same as in <xref linkend="nomakefile"/> and most of the packaging activities are the same.
zh: 這裡的 <emphasis role="strong">Makefile</emphasis> 正確使用 <emphasis role="strong">$(DESTDIR)</emphasis> 和 <emphasis role="strong">$(prefix)</emphasis>。其他的所有檔案都和 <xref linkend="nomakefile"/> 中的一樣，並且大多數的打包工作也都一樣。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">Makefile</emphasis> (v=1.0)
zh: <emphasis role="strong">Makefile</emphasis>（v=1.0）

note: type: Content of: <book><chapter><section><simpara>
en: Let’s inspect the notable template files generated.
zh: 讓我們來檢查一下自動產生的模板檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file, v=1.0):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案，v=1.0）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=1.0):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=1.0）：

note: type: Content of: <book><chapter><section><simpara>
en: Since this upstream source has the proper upstream <emphasis role="strong">Makefile</emphasis>, there is no need to create <emphasis role="strong">debian/install</emphasis> and <emphasis role="strong">debian/manpages</emphasis> files.
zh: 因為上游原始碼含有正確的上游 <emphasis role="strong">Makefile</emphasis> 文件，所以沒有必要再去建立 <emphasis role="strong">debian/install</emphasis> 和 <emphasis role="strong">debian/manpages</emphasis> 檔案。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/control</emphasis> file is exactly the same as the one in <xref linkend="nomakefile"/>.
zh: <emphasis role="strong">debian/control</emphasis> 檔案和 <xref linkend="nomakefile"/> 中的完全一致。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Template files under <emphasis role="strong">debian/</emphasis>. (v=1.0):
zh: <emphasis role="strong">debian/</emphasis> 目錄下的模板檔案。（v=1.0）：

note: type: Content of: <book><chapter><section><simpara>
en: The rest of the packaging activities are practically the same as the ones in <xref linkend="nomakefile"/>.
zh: 其餘的打包操作基本上和 <xref linkend="nomakefile"/> 中的相同。

note: type: Content of: <book><chapter><section><title>
en: setup.py (Python3, CLI)
zh: setup.py（Python3，命令列介面）

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-1.1.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-1.1.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><simpara>
en: Let’s package this with the <emphasis role="strong">debmake</emphasis> command.  Here, the <emphasis role="strong">-b':py3'</emphasis> option is used to specify the generated binary package containing Python3 script and module files.
zh: 讓我們使用 <emphasis role="strong">debmake</emphasis> 命令來打包。這裡使用 <emphasis role="strong">-b':py3'</emphasis> 選項來指明生成的二進位制包包含 Python3 指令碼和模組檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file, v=1.1):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案，v=1.1）：

note: type: Content of: <book><chapter><section><simpara>
en: This is essentially the standard <emphasis role="strong">debian/rules</emphasis> file with the <emphasis role="strong">dh</emphasis> command.
zh: 這基本上是帶有 <emphasis role="strong">dh</emphasis> 命令的標準 <emphasis role="strong">debian/rules</emphasis> 檔案。

note: type: Content of: <book><chapter><section><simpara>
en: The use of the “<emphasis role="strong">--with python3</emphasis>” option invokes <emphasis role="strong">dh_python3</emphasis> to calculate Python dependencies, add maintainer scripts to byte compiled files, etc. See <emphasis role="strong">dh_python3</emphasis>(1).
zh: 使用“<emphasis role="strong">--with python3</emphasis>”選項會呼叫 <emphasis role="strong">dh_python3</emphasis> 來計算 Python 依賴項、將維護者指令碼新增到位元組碼檔案等。參見 <emphasis role="strong">dh_python3</emphasis>(1)。

note: type: Content of: <book><chapter><section><simpara>
en: The use of the “<emphasis role="strong">--buildsystem=pybuild</emphasis>” option invokes various build systems for requested Python versions in order to build modules and extensions.  See <emphasis role="strong">pybuild</emphasis>(1).
zh: 使用“<emphasis role="strong">--buildsystem=pybuild</emphasis>”選項會為要求的 Python 版本呼叫各種構建系統，以便構建模組和擴充套件。參見 <emphasis role="strong">pybuild</emphasis>(1)。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (template file, v=1.1):
zh: <emphasis role="strong">debian/control</emphasis>（模板檔案，v=1.1）：

note: type: Content of: <book><chapter><section><simpara>
en: Since this is the Python3 package, the <emphasis role="strong">debmake</emphasis> command sets “<emphasis role="strong">Architecture: all</emphasis>” and “<emphasis role="strong">Multi-Arch: foreign</emphasis>”.  Also, it sets required <emphasis role="strong">substvar</emphasis> parameters as “<emphasis role="strong">Depends: ${python3:Depends}, ${misc:Depends}</emphasis>”.  These are explained in <xref linkend="basics"/>.
zh: 因為這是 Python3 套件，<emphasis role="strong">debmake</emphasis> 命令會設定“<emphasis role="strong">Architecture: all</emphasis>”和“<emphasis role="strong">Multi-Arch: foreign</emphasis>”。此外，它還將所需的 <emphasis role="strong">substvar</emphasis> 引數設定為“<emphasis role="strong">Depends: ${python3:Depends}, ${misc:Depends}</emphasis>”。<xref linkend="basics"/> 對這些做出瞭解釋。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=1.1):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=1.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (maintainer version, v=1.1):
zh: <emphasis role="strong">debian/control</emphasis>（維護者版本，v=1.1）：

note: type: Content of: <book><chapter><section><simpara>
en: The rest of the packaging activities are practically the same as the ones in <xref linkend="makefile-sh"/>.
zh: 其餘的打包工作與 <xref linkend="makefile-sh"/> 中的幾乎一致。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Template files under <emphasis role="strong">debian/</emphasis>. (v=1.1):
zh: <emphasis role="strong">debian/</emphasis> 目錄下的模板檔案。（v=1.1）：

note: type: Content of: <book><chapter><section><simpara>
en: Here is the generated dependency list of <emphasis role="strong">debhello_1.1-1_all.deb</emphasis>.
zh: 此處是生成的 <emphasis role="strong">debhello_1.1-1_all.deb</emphasis> 包的依賴項列表。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated dependency list of <emphasis role="strong">debhello_1.1-1_all.deb</emphasis>:
zh: <emphasis role="strong">debhello_1.1-1_all.deb</emphasis> 的依賴項列表：

note: type: Content of: <book><chapter><section><title>
en: Makefile (shell, GUI)
zh: Makefile（shell，圖形介面）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a POSIX shell GUI program using the <emphasis role="strong">Makefile</emphasis> as its build system.
zh: 此處是一個從 POSIX shell 圖形介面程式構建簡單的 Debian 套件的範例，我們假設程式使用 <emphasis role="strong">Makefile</emphasis> 作為構建系統。

note: type: Content of: <book><chapter><section><simpara>
en: This upstream is based on <xref linkend="makefile-sh"/> with enhanced GUI support.
zh: 上游是基於 <xref linkend="makefile-sh"/> 中的原始碼，並帶有增強的圖形介面支持。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume its upstream tarball to be <emphasis role="strong">debhello-1.2.tar.gz</emphasis>.
zh: 讓我們假設上游的原始碼套件為 <emphasis role="strong">debhello-1.2.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-1.2.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-1.2.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><simpara>
en: Here, the <emphasis role="strong">hello</emphasis> has been re-written to use the <emphasis role="strong">zenity</emphasis> command to make this a GTK+ GUI program.
zh: 此處的 <emphasis role="strong">hello</emphasis> 已經被重寫以便使用 <emphasis role="strong">zenity</emphasis> 命令來使其成為 GTK+ 圖形介面程序。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">hello</emphasis> (v=1.2)
zh: <emphasis role="strong">hello</emphasis>（v=1.2）

note: type: Content of: <book><chapter><section><simpara>
en: Here, the desktop file is updated to be <emphasis role="strong">Terminal=false</emphasis> as a GUI program.
zh: 這裡，作為圖形介面程式，桌面檔案被更新為 <emphasis role="strong">Terminal=false</emphasis>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">hello.desktop</emphasis> (v=1.2)
zh: <emphasis role="strong">hello.desktop</emphasis>（v=1.2）

note: type: Content of: <book><chapter><section><simpara>
en: All other files are the same as in <xref linkend="makefile-sh"/>.
zh: 其餘的所有檔案都與 <xref linkend="makefile-sh"/> 中的一致。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (template file, v=1.2):
zh: <emphasis role="strong">debian/control</emphasis>（模板檔案，v=1.2）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (maintainer version, v=1.2):
zh: <emphasis role="strong">debian/control</emphasis>（維護者版本，v=1.2）：

note: type: Content of: <book><chapter><section><simpara>
en: Please note the manually added <emphasis role="strong">zenity</emphasis> dependency.
zh: 請注意，這裡需要手動新增 <emphasis role="strong">zenity</emphasis> 依賴。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/rules</emphasis> file is exactly the same as the one in <xref linkend="makefile-sh"/>.
zh: <emphasis role="strong">debian/rules</emphasis> 檔案與 <xref linkend="makefile-sh"/> 中的完全一致。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Template files under <emphasis role="strong">debian/</emphasis>. (v=1.2):
zh: <emphasis role="strong">debian/</emphasis> 目錄下的模板檔案。（v=1.2）：

note: type: Content of: <book><chapter><section><simpara>
en: The rest of the packaging activities are practically the same as in <xref linkend="makefile-sh"/>.
zh: 其餘的打包工作與 <xref linkend="makefile-sh"/> 中的幾乎一致。

note: type: Content of: <book><chapter><section><simpara>
en: Here is the generated dependency list of <emphasis role="strong">debhello_1.2-1_all.deb</emphasis>.
zh: 此處是 <emphasis role="strong">debhello_1.2-1_all.deb</emphasis> 的依賴項列表。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated dependency list of <emphasis role="strong">debhello_1.2-1_all.deb</emphasis>:
zh: <emphasis role="strong">debhello_1.2-1_all.deb</emphasis> 的依賴項列表：

note: type: Content of: <book><chapter><section><title>
en: setup.py (Python3, GUI)
zh: setup.py（Python3，圖形介面）

note: type: Content of: <book><chapter><section><simpara>
en: This upstream is based on <xref linkend="setup-py"/> with enhanced GUI, desktop icon, and manpage support.
zh: 上游是基於 <xref linkend="setup-py"/> 中的原始碼，並帶有增強的圖形介面、桌面圖示、手冊頁。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-1.3.tar.gz</emphasis>.
zh: 讓我們假設上游原始碼套件為 <emphasis role="strong">debhello-1.3.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-1.3.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-1.3.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><simpara>
en: Let’s package this with the <emphasis role="strong">debmake</emphasis> command.  Here, the <emphasis role="strong">-b':py3'</emphasis> option is used to specify that the generated binary package contains Python3 script and module files.
zh: 讓我們使用 <emphasis role="strong">debmake</emphasis> 命令來打包。這裡使用 <emphasis role="strong">-b':py3'</emphasis> 選項來指明生成的二進位制包包含 Python3 指令碼和模組檔案。

note: type: Content of: <book><chapter><section><simpara>
en: The result is practically the same as in <xref linkend="setup-py"/>.
zh: 其餘的步驟與 <xref linkend="setup-py"/> 中的基本一致。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=1.3):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=1.3）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (maintainer version, v=1.3):
zh: <emphasis role="strong">debian/control</emphasis>（維護者版本，v=1.3）：

note: type: Content of: <book><chapter><section><simpara>
en: Please note the manually added <emphasis role="strong">python3-gi</emphasis> and <emphasis role="strong">gir1.2-gtk-3.0</emphasis> dependencies.
zh: 請注意，此處需要手動新增 <emphasis role="strong">python3-gi</emphasis> 和 <emphasis role="strong">gir1.2-gtk-3.0</emphasis> 依賴。

note: type: Content of: <book><chapter><section><simpara>
en: The rest of the packaging activities are practically the same as in <xref linkend="setup-py"/>.
zh: 其餘的打包工作與 <xref linkend="setup-py"/> 中的幾乎完全一致。

note: type: Content of: <book><chapter><section><simpara>
en: Here is the generated dependency list of <emphasis role="strong">debhello_1.3-1_all.deb</emphasis>.
zh: 此處是 <emphasis role="strong">debhello_1.3-1_all.deb</emphasis> 的依賴項列表。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated dependency list of <emphasis role="strong">debhello_1.3-1_all.deb</emphasis>:
zh: <emphasis role="strong">debhello_1.3-1_all.deb</emphasis> 的依賴項列表：

note: type: Content of: <book><chapter><section><title>
en: Makefile (single-binary package)
zh: Makefile（單個二進位制套件）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a simple C source program using the <emphasis role="strong">Makefile</emphasis> as its build system.
zh: 這裡給出了從簡單的 C 語言原始碼建立簡單的 Debian 套件的例子，並假設上游使用了 <emphasis role="strong">Makefile</emphasis> 作為構建系統。

note: type: Content of: <book><chapter><section><simpara>
en: This is an enhanced upstream source example for <xref linkend="simple"/>.  This comes with the manpage, the desktop file, and the desktop icon.  This also links to an external library <emphasis role="strong">libm</emphasis> to be a more practical example.
zh: 此處的上游原始碼是 <xref linkend="simple"/> 中的原始碼的增強版本。它帶有手冊頁、桌面檔案和桌面圖示。並且為了更加貼合實際，它還有一個外部程式庫檔案 <emphasis role="strong">libm</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-1.4.tar.gz</emphasis>.
zh: 讓我們假設上游原始碼套件為 <emphasis role="strong">debhello-1.4.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: Debian packaging requires changing this “<emphasis role="strong">make install</emphasis>” process to install files into the target system image location instead of the normal location under <emphasis role="strong">/usr/local</emphasis>.
zh: Debian 的打包需要對“<emphasis role="strong">make install</emphasis>”流程進行改變，從而將檔案安裝至系統映象所在位置，而非通常使用的 <emphasis role="strong">/usr/local</emphasis> 下的位置。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-1.4.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-1.4.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><simpara>
en: Here, the contents of this source are as follows.
zh: 此處的原始碼如下所示。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/hello.c</emphasis> (v=1.4):
zh: <emphasis role="strong">src/hello.c</emphasis>（v=1.4）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/config.h</emphasis> (v=1.4):
zh: <emphasis role="strong">src/config.h</emphasis>（v=1.4）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">Makefile</emphasis> (v=1.4):
zh: <emphasis role="strong">Makefile</emphasis>（v=1.4）：

note: type: Content of: <book><chapter><section><simpara>
en: Please note that this <emphasis role="strong">Makefile</emphasis> has the proper <emphasis role="strong">install</emphasis> target for the manpage, the desktop file, and the desktop icon.
zh: 請注意，此 <emphasis role="strong">Makefile</emphasis> 含有正確的手冊頁、桌面檔案、桌面圖示的 <emphasis role="strong">install</emphasis> 物件。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s package this with the <emphasis role="strong">debmake</emphasis> command.
zh: 讓我們使用 <emphasis role="strong">debmake</emphasis> 命令打包。

note: type: Content of: <book><chapter><section><simpara>
en: The result is practically the same as in <xref linkend="step-debmake"/>.
zh: 其餘的工作與 <xref linkend="step-debmake"/> 中的幾乎一致。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s make this Debian package, which is practically the same as in <xref linkend="step-maintainer"/>, better as the maintainer.
zh: 像 <xref linkend="step-maintainer"/> 中所寫的一樣，讓我們這些維護者來把這個 Debian 套件做的更好。

note: type: Content of: <book><chapter><section><simpara>
en: If the <emphasis role="strong">DEB_BUILD_MAINT_OPTIONS</emphasis> environment variable is not exported in <emphasis role="strong">debian/rules</emphasis>, lintian warns "W: debhello: hardening-no-relro usr/bin/hello" for the linking of <emphasis role="strong">libm</emphasis>.
zh: 如果環境變數 <emphasis role="strong">DEB_BUILD_MAINT_OPTIONS</emphasis> 沒有在 <emphasis role="strong">debian/rules</emphasis> 檔案中進行匯出，lintian 會在連結 <emphasis role="strong">libm</emphasis> 時丟擲警告：“W: debhello: hardening-no-relro usr/bin/hello”。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">debian/control</emphasis> file makes it exactly the same as the one in <xref linkend="step-maintainer"/>, since the <emphasis role="strong">libm</emphasis> library is always available as a part of <emphasis role="strong">libc6</emphasis> (Priority: required).
zh: <emphasis role="strong">debian/control</emphasis> 檔案與 <xref linkend="step-maintainer"/> 中的完全一致，因為 <emphasis role="strong">libm</emphasis> 程式庫是 <emphasis role="strong">libc6</emphasis> 程式庫的一部分，所以它總是可獲得的（優先順序：必需 / Priority: required）。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Template files under <emphasis role="strong">debian/</emphasis>. (v=1.4):
zh: <emphasis role="strong">debian/</emphasis> 目錄下的模板檔案。（v=1.4）：

note: type: Content of: <book><chapter><section><simpara>
en: The rest of the packaging activities are practically the same as the one in <xref linkend="step-debuild"/>.
zh: 其餘的打包步驟與 <xref linkend="step-debuild"/> 中的基本一致。

note: type: Content of: <book><chapter><section><simpara>
en: Here is the generated dependency list of all binary packages.
zh: 此處是生成的二進位制包的依賴項列表。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated dependency list of all binary packages (v=1.4):
zh: 生成的二進位制包的依賴項列表（v=1.4）：

note: type: Content of: <book><chapter><section><title>
en: Makefile.in + configure (single-binary package)
zh: Makefile.in + configure（單個二進位制套件）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a simple C source program using <emphasis role="strong">Makefile.in</emphasis> and <emphasis role="strong">configure</emphasis> as its build system.
zh: 這裡給出了從簡單的 C 語言原始碼建立簡單的 Debian 套件的例子，並假設上游使用了 <emphasis role="strong">Makefile.in</emphasis> 和 <emphasis role="strong">configure</emphasis> 作為構建系統。

note: type: Content of: <book><chapter><section><simpara>
en: This is an enhanced upstream source example for <xref linkend="makefile-single"/>.  This also links to an external library, <emphasis role="strong">libm</emphasis>, and this source is configurable using arguments to the <emphasis role="strong">configure</emphasis> script, which generates the <emphasis role="strong">Makefile</emphasis> and <emphasis role="strong">src/config.h</emphasis> files.
zh: 此處的原始碼範例是 <xref linkend="makefile-single"/> 中的原始碼的增強版本。它也有一個外部連結程式庫 <emphasis role="strong">libm</emphasis>，並且它的原始碼可以使用 <emphasis role="strong">configure</emphasis> 指令碼進行配置，然後生成相應的 <emphasis role="strong">Makefile</emphasis>、<emphasis role="strong">src/config.h</emphasis> 檔案。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-1.5.tar.gz</emphasis>.
zh: 讓我們假設上游原始碼套件為 <emphasis role="strong">debhello-1.5.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: This type of source is meant to be installed as a non-system file, for example, as:
zh: 此型別的原始碼旨在作為非系統檔案安裝，例如：

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-1.5.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-1.5.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/hello.c</emphasis> (v=1.5):
zh: <emphasis role="strong">src/hello.c</emphasis>（v=1.5）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">Makefile.in</emphasis> (v=1.5):
zh: <emphasis role="strong">Makefile.in</emphasis>（v=1.5）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">configure</emphasis> (v=1.5):
zh: <emphasis role="strong">configure</emphasis>（v=1.5）：

note: type: Content of: <book><chapter><section><simpara>
en: Please note that the <emphasis role="strong">configure</emphasis> command replaces strings with <emphasis role="strong">@…@</emphasis> in <emphasis role="strong">Makefile.in</emphasis> to produce <emphasis role="strong">Makefile</emphasis> and creates <emphasis role="strong">src/config.h</emphasis>.
zh: 請注意，<emphasis role="strong">configure</emphasis> 命令替換 <emphasis role="strong">Makefile.in</emphasis> 檔案中的 <emphasis role="strong">@…@</emphasis> 字串以生成 <emphasis role="strong">Makefile</emphasis> 與 <emphasis role="strong">src/config.h</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: The result is similar to <xref linkend="step-debmake"/> but not exactly the same.
zh: 結果與 <xref linkend="step-debmake"/> 中的相似，但是並不完全一致。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file, v=1.5):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案，v=1.5）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=1.5):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=1.5）：

note: type: Content of: <book><chapter><section><title>
en: Autotools (single-binary package)
zh: Autotools（單個二進位制檔案）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a simple C source program using Autotools = Autoconf and Automake (<emphasis role="strong">Makefile.am</emphasis> and <emphasis role="strong">configure.ac</emphasis>) as its build system. See <xref linkend="autotools"/>.
zh: 這裡給出了從簡單的 C 語言原始碼建立簡單的 Debian 套件的例子，並假設上游使用了 Autotools = Autoconf （<emphasis role="strong">Makefile.am</emphasis> 和 <emphasis role="strong">configure.ac</emphasis>） 作為構建系統。參見 <xref linkend="autotools"/>。

note: type: Content of: <book><chapter><section><simpara>
en: This source usually comes with the upstream auto-generated <emphasis role="strong">Makefile.in</emphasis> and <emphasis role="strong">configure</emphasis> files, too.  This source can be packaged using these files as in <xref linkend="configure-single"/> with the help of the <emphasis role="strong">autotools-dev</emphasis> package.
zh: 此種原始碼通常也帶有上游自動生成的 <emphasis role="strong">Makefile.in</emphasis> 和 <emphasis role="strong">configure</emphasis> 檔案。在 <emphasis role="strong">autotools-dev</emphasis> 套件的幫助下，我們可以按 <xref linkend="configure-single"/> 中所介紹的，使用這些檔案進行打包。

note: type: Content of: <book><chapter><section><simpara>
en: The better alternative is to regenerate these files using the latest Autoconf and Automake packages if the upstream provided <emphasis role="strong">Makefile.am</emphasis> and <emphasis role="strong">configure.ac</emphasis> are compatible with the latest version.  This is advantageous for porting to new CPU architectures, etc.  This can be automated by using the “<emphasis role="strong">--with autoreconf</emphasis>” option for the <emphasis role="strong">dh</emphasis> command.
zh: 更好的做法是，如果上游提供的 <emphasis role="strong">Makefile.am</emphasis> 和 <emphasis role="strong">configure.ac</emphasis> 相容最新版本，我們可以使用最新的 Autoconf 和 Automake 套件重新生成這些（Makefile 和 configure）檔案。這麼做有利於移植到新的 CPU 架構上等優勢。此項工作可以使用帶有 “<emphasis role="strong">--with autoreconf</emphasis>” 選項的 <emphasis role="strong">dh</emphasis> 命令來自動化。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-1.6.tar.gz</emphasis>.
zh: 讓我們假設上游的原始碼套件為 <emphasis role="strong">debhello-1.6.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-1.6.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-1.6.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/hello.c</emphasis> (v=1.6):
zh: <emphasis role="strong">src/hello.c</emphasis>（v=1.6）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">Makefile.am</emphasis> (v=1.6):
zh: <emphasis role="strong">Makefile.am</emphasis>（v=1.6）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">configure.ac</emphasis> (v=1.6):
zh: <emphasis role="strong">configure.ac</emphasis>（v=1.6）：

note: type: Content of: <book><chapter><section><tip><simpara>
en: Without “<emphasis role="strong">foreign</emphasis>” strictness level specified in <emphasis role="strong">AM_INIT_AUTOMAKE()</emphasis> as above, <emphasis role="strong">automake</emphasis> defaults to “<emphasis role="strong">gnu</emphasis>” strictness level requiring several files in the top-level directory.  See “3.2 Strictness” in the <emphasis role="strong">automake</emphasis> document.
zh: 如果沒有像上述例子中，在 <emphasis role="strong">AM_INIT_AUTOMAKE()</emphasis> 中指定嚴格級別（strictness level）為 “<emphasis role="strong">foreign</emphasis>”，那麼 <emphasis role="strong">automake</emphasis> 會預設嚴格級別為 “<emphasis role="strong">gnu</emphasis>”，並需要在頂級目錄中有若干檔案。參見 <emphasis role="strong">automake</emphasis> 文件的 “3.2 Strictness”。

note: type: Content of: <book><chapter><section><simpara>
en: The result is similar to <xref linkend="configure-single"/> but not exactly the same.
zh: 結果與 <xref linkend="configure-single"/> 中的類似，但是並不完全一致。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file, v=1.6):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案，v=1.6）:

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=1.6):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=1.6）：

note: type: Content of: <book><chapter><section><title>
en: CMake (single-binary package)
zh: CMake（單個二進位制套件）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a simple Debian package from a simple C source program using CMake (<emphasis role="strong">CMakeLists.txt</emphasis> and some files such as <emphasis role="strong">config.h.in</emphasis>) as its build system. See <xref linkend="cmake"/>.
zh: 此處是一個從簡單的 C 語言原始碼程式生成簡單的 Debian 套件的範例，我們假設上游使用 CMake（<emphasis role="strong">CMakeLists.txt</emphasis> 和若干形似 <emphasis role="strong">config.h.in</emphasis> 的檔案）作為構建系統。參見 <xref linkend="cmake"/>。

note: type: Content of: <book><chapter><section><simpara>
en: The <emphasis role="strong">cmake</emphasis> command generates the <emphasis role="strong">Makefile</emphasis> file based on the <emphasis role="strong">CMakeLists.txt</emphasis> file and its <emphasis role="strong">-D</emphasis> option.  It also configures the file as specified in its <emphasis role="strong">configure_file(…)</emphasis> by replacing strings with <emphasis role="strong">@…@</emphasis> and changing the <emphasis role="strong">#cmakedefine …</emphasis> line.
zh: <emphasis role="strong">cmake</emphasis> 命令根據 <emphasis role="strong">CMakeLists.txt</emphasis> 檔案和它的 <emphasis role="strong">-D</emphasis> 選項來生成 <emphasis role="strong">Makefile</emphasis> 檔案。此外，它還會根據 <emphasis role="strong">configure_file(…)</emphasis> 中指定的條目來替換帶有 <emphasis role="strong">@…@</emphasis> 的字串、更改 <emphasis role="strong">#cmakedefine …</emphasis>。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-1.7.tar.gz</emphasis>.
zh: 讓我們假設上游的原始碼套件為 <emphasis role="strong">debhello-1.7.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-1.7.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-1.7.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/hello.c</emphasis> (v=1.7):
zh: <emphasis role="strong">src/hello.c</emphasis>（v=1.7）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/config.h.in</emphasis> (v=1.7):
zh: <emphasis role="strong">src/config.h.in</emphasis>（v=1.7）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">CMakeLists.txt</emphasis> (v=1.7):
zh: <emphasis role="strong">CMakeLists.txt</emphasis>（v=1.7）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file, v=1.7):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案，v=1.7）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (template file, v=1.7):
zh: <emphasis role="strong">debian/control</emphasis>（模板檔案，v=1.7）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=1.7):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=1.7）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (maintainer version, v=1.7):
zh: <emphasis role="strong">debian/control</emphasis>（維護者版本，v=1.7）：

note: type: Content of: <book><chapter><section><simpara>
en: The rest of the packaging activities are practically the same as the one in <xref linkend="configure-single"/>.
zh: 其餘的打包工作與 <xref linkend="configure-single"/> 中的近乎一致。

note: type: Content of: <book><chapter><section><title>
en: Autotools (multi-binary package)
zh: Autotools（多個二進位制套件）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a set of Debian binary packages including the executable package, the shared library package, the development file package, and the debug symbol package from a simple C source program using Autotools = Autoconf and Automake (which use <emphasis role="strong">Makefile.am</emphasis> and <emphasis role="strong">configure.ac</emphasis> as their input files) as its build system.  See <xref linkend="autotools"/>.
zh: 此處是從一個簡單的 C 語言原始碼程式建立一個包含可執行套件、共享程式庫包、開發檔案包和除錯符號包的一系列 Debian 二進位制包的範例，我們假設上游使用 Autotools = Autoconf 和 Automake （使用 <emphasis role="strong">Makefile.am</emphasis> 和 <emphasis role="strong">configure.ac</emphasis> 作為輸入檔案）作為構建系統。參見 <xref linkend="autotools"/>。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s package this in the same way as in <xref linkend="autotools-single"/>.
zh: 讓我們用與 <xref linkend="autotools-single"/> 中的相同的方式打包。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-2.0.tar.gz</emphasis>.
zh: 讓我們假設上游原始碼套件為 <emphasis role="strong">debhello-2.0.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-2.0.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-2.0.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/hello.c</emphasis> (v=2.0):
zh: <emphasis role="strong">src/hello.c</emphasis>（v=2.0）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">lib/sharedlib.h</emphasis> and <emphasis role="strong">lib/sharedlib.c</emphasis> (v=1.6):
zh: <emphasis role="strong">lib/sharedlib.h</emphasis> 與 <emphasis role="strong">lib/sharedlib.c</emphasis>（v=1.6）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">Makefile.am</emphasis> (v=2.0):
zh: <emphasis role="strong">Makefile.am</emphasis>（v=2.0）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">configure.ac</emphasis> (v=2.0):
zh: <emphasis role="strong">configure.ac</emphasis>（v=2.0）：

note: type: Content of: <book><chapter><section><simpara>
en: Let’s package this with the <emphasis role="strong">debmake</emphasis> command into multiple packages:
zh: 讓我們用 <emphasis role="strong">debmake</emphasis> 命令將這些打包到多個包中：

note: type: Content of: <book><chapter><section><simpara>
en: Here, the <emphasis role="strong">-b',libsharedlib1,libsharedlib-dev'</emphasis> option is used to specify the generated binary packages.
zh: 此處的 <emphasis role="strong">-b',libsharedlib1,libsharedlib-dev'</emphasis> 選項是用以指明生成的二進位制包。

note: type: Content of: <book><chapter><section><simpara>
en: The result is similar to <xref linkend="configure-single"/> but with more template files.
zh: 結果與 <xref linkend="configure-single"/> 中的相似，但是這個具有更多的模板檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file, v=2.0):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案，v=2.0）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=2.0):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=2.0）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (maintainer version, v=2.0):
zh: <emphasis role="strong">debian/control</emphasis>（維護者版本，v=2.0）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/*.install</emphasis> (maintainer version, v=2.0):
zh: <emphasis role="strong">debian/*.install</emphasis>（維護者版本，v=2.0）：

note: type: Content of: <book><chapter><section><simpara>
en: Since this upstream source creates the proper auto-generated <emphasis role="strong">Makefile</emphasis>, there is no need to create <emphasis role="strong">debian/install</emphasis> and <emphasis role="strong">debian/manpages</emphasis> files.
zh: 因為上游原始碼已經具有正確的自動生成的 <emphasis role="strong">Makefile</emphasis> 檔案，所以沒有必要再去建立 <emphasis role="strong">debian/install</emphasis> 和 <emphasis role="strong">debian/manpages</emphasis> 文件。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Template files under <emphasis role="strong">debian/</emphasis>. (v=2.0):
zh: <emphasis role="strong">debian/</emphasis> 目錄下的模板檔案。（v=2.0）：

note: type: Content of: <book><chapter><section><simpara>
en: Here are the generated dependency list of all binary packages.
zh: 此處是生成的二進位制包的依賴項列表。

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated dependency list of all binary packages (v=2.0):
zh: 生成的二進位制包的依賴項列表（v=2.0）：

note: type: Content of: <book><chapter><section><title>
en: CMake (multi-binary package)
zh: CMake（多個二進位制套件）

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of creating a set of Debian binary packages including the executable package, the shared library package, the development file package, and the debug symbol package from a simple C source program using CMake (<emphasis role="strong">CMakeLists.txt</emphasis> and some files such as <emphasis role="strong">config.h.in</emphasis>) as its build system. See <xref linkend="cmake"/>.
zh: 此處是從一個簡單的 C 語言原始碼程式建立一系列包含可執行套件、共享程式庫包、開發文件包和除錯符號包的 Debian 二進位制包的範例，我們假設上游使用 CMake（<emphasis role="strong">CMakeLists.txt</emphasis> 和其他形如 <emphasis role="strong">config.h.in</emphasis> 的檔案）作為構建系統。參見 <xref linkend="cmake"/>。

note: type: Content of: <book><chapter><section><simpara>
en: Let’s assume this upstream tarball to be <emphasis role="strong">debhello-2.1.tar.gz</emphasis>.
zh: 讓我們假設上游原始碼套件為 <emphasis role="strong">debhello-2.1.tar.gz</emphasis>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-2.1.tar.gz</emphasis>
zh: 下載 <emphasis role="strong">debhello-2.1.tar.gz</emphasis>

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/hello.c</emphasis> (v=2.1):
zh: <emphasis role="strong">src/hello.c</emphasis>（v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/config.h.in</emphasis> (v=2.1):
zh: <emphasis role="strong">src/config.h.in</emphasis>（v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">lib/sharedlib.c</emphasis> and <emphasis role="strong">lib/sharedlib.h</emphasis> (v=2.1):
zh: <emphasis role="strong">lib/sharedlib.c</emphasis> 與 <emphasis role="strong">lib/sharedlib.h</emphasis>（v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">CMakeLists.txt</emphasis> (v=2.1):
zh: <emphasis role="strong">CMakeLists.txt</emphasis>（v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (template file, v=2.1):
zh: <emphasis role="strong">debian/rules</emphasis>（模板檔案，v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/rules</emphasis> (maintainer version, v=2.1):
zh: <emphasis role="strong">debian/rules</emphasis>（維護者版本，v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/control</emphasis> (maintainer version, v=2.1):
zh: <emphasis role="strong">debian/control</emphasis>（維護者版本，v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/*.install</emphasis> (maintainer version, v=2.1):
zh: <emphasis role="strong">debian/*.install</emphasis>（維護者版本，v=2.1）：

note: type: Content of: <book><chapter><section><simpara>
en: This upstream CMakeList.txt needs to be patched to cope with the multiarch path.
zh: 需要對上游的 CMakeList.txt 進行修補，以便應對多架構的路徑。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">debian/patches/</emphasis>* (maintainer version, v=2.1):
zh: <emphasis role="strong">debian/patches/</emphasis>*（維護者版本，v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: Template files under <emphasis role="strong">debian/</emphasis>. (v=2.1):
zh: <emphasis role="strong">debian/</emphasis> 目錄下的模板檔案。（v=2.1）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: The generated dependency list of all binary packages (v=2.1):
zh: 生成的二進位制包的依賴項列表（v=2.1）：

note: type: Content of: <book><chapter><section><title>
en: Internationalization
zh: 國際化

note: type: Content of: <book><chapter><section><simpara>
en: Here is an example of updating the simple upstream C source <emphasis role="strong">debhello-2.0.tar.gz</emphasis> presented in <xref linkend="autotools-multi"/> for internationalization (i18n) and creating the updated upstream C source <emphasis role="strong">debhello-2.0.tar.gz</emphasis>.
zh: 此處是更新 <xref linkend="autotools-multi"/> 中提供的簡單上游 C 語言原始碼 <emphasis role="strong">debhello-2.0.tar.gz</emphasis> 以便進行國際化（i18n）並建立更新後的上游 C 語言原始碼 <emphasis role="strong">debhello-2.0.tar.gz</emphasis> 的範例。

note: type: Content of: <book><chapter><section><simpara>
en: In the real situation, the package should already be internationalized.  So this example is educational for you to understand how this internationalization is implemented.
zh: 在實際情況中，此套件應該已被國際化過。所以此範例用作幫助您瞭解國際化的具體實現方法。

note: type: Content of: <book><chapter><section><tip><simpara>
en: The routine maintainer activity for the i18n is simply to add translation po files reported to you via the Bug Tracking System (BTS) to the <emphasis role="strong">po/</emphasis> directory and to update the language list in the <emphasis role="strong">po/LINGUAS</emphasis> file.
zh: 負責維護國際化的維護者的日常活動就是將通過缺陷追蹤系統（BTS）反饋給您的 po 翻譯檔案新增至 <emphasis role="strong">po/</emphasis> 目錄，然後更新 <emphasis role="strong">po/LINGUAS</emphasis> 檔案的語言列表。

note: type: Content of: <book><chapter><section><formalpara><title>
en: Download <emphasis role="strong">debhello-2.0.tar.gz</emphasis> (i18n)
zh: 下載 <emphasis role="strong">debhello-2.0.tar.gz</emphasis>（國際化版）

note: type: Content of: <book><chapter><section><simpara>
en: Internationalize this source tree with the <emphasis role="strong">gettextize</emphasis> command and remove files auto-generated by Autotools.
zh: 使用 <emphasis role="strong">gettextize</emphasis> 命令將此原始碼樹國際化，並刪除由 Autotools 自動生成的檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: run <emphasis role="strong">gettextize</emphasis> (i18n):
zh: 執行 <emphasis role="strong">gettextize</emphasis>（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: Let’s check generated files under the <emphasis role="strong">po/</emphasis> directory.
zh: 讓我們確認一下 <emphasis role="strong">po/</emphasis> 目錄下生成的檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: files in <emphasis role="strong">po</emphasis> (i18n):
zh: <emphasis role="strong">po</emphasis> 目錄下的檔案（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: Let’s update the <emphasis role="strong">configure.ac</emphasis> by adding “<emphasis role="strong">AM_GNU_GETTEXT([external])</emphasis>”, etc..
zh: 讓我們在 <emphasis role="strong">configure.ac</emphasis> 檔案中新增 “<emphasis role="strong">AM_GNU_GETTEXT([external])</emphasis>” 等條目。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">configure.ac</emphasis> (i18n):
zh: <emphasis role="strong">configure.ac</emphasis>（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: Let’s create the <emphasis role="strong">po/Makevars</emphasis> file from the <emphasis role="strong">po/Makevars.template</emphasis> file.
zh: 讓我們從 <emphasis role="strong">po/Makevars.template</emphasis> 檔案中創建 <emphasis role="strong">po/Makevars</emphasis> 檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">po/Makevars</emphasis> (i18n):
zh: <emphasis role="strong">po/Makevars</emphasis>（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: Let’s update C sources for the i18n version by wrapping strings with <emphasis role="strong">_(…)</emphasis>.
zh: 讓我們通過用 <emphasis role="strong">_(…)</emphasis> 包裹字串的方式來更新國際化版本的 C 語言原始碼。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">src/hello.c</emphasis> (i18n):
zh: <emphasis role="strong">src/hello.c</emphasis> （國際化版）：

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">lib/sharedlib.c</emphasis> (i18n):
zh: <emphasis role="strong">lib/sharedlib.c</emphasis>（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: The new <emphasis role="strong">gettext</emphasis> (v=0.19) can handle the i18n version of the desktop file directly.
zh: 新版本的 <emphasis role="strong">gettext</emphasis>（v = 0.19）可以直接處理桌面檔案的國際化版本。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">data/hello.desktop.in</emphasis> (i18n):
zh: <emphasis role="strong">data/hello.desktop.in</emphasis>（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: Let’s list the input files to extract translatable strings in <emphasis role="strong">po/POTFILES.in</emphasis>.
zh: 讓我們列出輸入檔案，以便在 <emphasis role="strong">po/POTFILES.in</emphasis> 中提取可翻譯的字串。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">po/POTFILES.in</emphasis> (i18n):
zh: <emphasis role="strong">po/POTFILES.in</emphasis>（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: Here is the updated root <emphasis role="strong">Makefile.am</emphasis> with <emphasis role="strong">po</emphasis> added to the <emphasis role="strong">SUBDIRS</emphasis> environment variable.
zh: 此處是在 <emphasis role="strong">SUBDIRS</emphasis> 環境變數中新增 <emphasis role="strong">po</emphasis> 目錄後更新過的根 <emphasis role="strong">Makefile.am</emphasis> 檔案。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">Makefile.am</emphasis> (i18n):
zh: <emphasis role="strong">Makefile.am</emphasis> （國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: Let’s make a translation template file, <emphasis role="strong">debhello.pot</emphasis>.
zh: 讓我們建立一個翻譯模板檔案 <emphasis role="strong">debhello.pot</emphasis>。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">po/debhello.pot</emphasis> (i18n):
zh: <emphasis role="strong">po/debhello.pot</emphasis>（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: Let’s add a translation for French.
zh: 讓我們新增法語的翻譯。

note: type: Content of: <book><chapter><section><formalpara><title>
en: <emphasis role="strong">po/LINGUAS</emphasis> and <emphasis role="strong">po/fr.po</emphasis> (i18n):
zh: <emphasis role="strong">po/LINGUAS</emphasis> 與 <emphasis role="strong">po/fr.po</emphasis>（國際化版）：

note: type: Content of: <book><chapter><section><simpara>
en: The packaging activities are practically the same as the one in <xref linkend="autotools-multi"/>.
zh: 打包工作與 <xref linkend="autotools-multi"/> 中的近乎一致。

note: type: Content of: <book><chapter><section><title>
en: Details
zh: 細節

note: type: Content of: <book><chapter><section><simpara>
en: Actual details of the examples presented and their variants can be obtained by the following.
zh: 所示範例的實際細節及其變體可通過以下方式獲得。

note: type: Content of: <book><chapter><section><formalpara><title>
en: How to get details
zh: 如何取得細節

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: emulated console command line activity log: the <emphasis role="strong">.log</emphasis> file
zh: 模擬控制檯命令列活動日誌：<emphasis role="strong">.log</emphasis> 檔案

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: emulated console command line activity log (short): the <emphasis role="strong">.slog</emphasis> file
zh: 模擬控制檯命令列活動日誌（縮略版）：<emphasis role="strong">.slog</emphasis> 檔案

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: snapshot source tree image after the <emphasis role="strong">debmake</emphasis> command: the <emphasis role="strong">debmake</emphasis> directory
zh: 執行 <emphasis role="strong">debmake</emphasis> 命令後的原始碼樹快照：<emphasis role="strong">debmake</emphasis> 目錄

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: snapshot source tree image after proper packaging: the <emphasis role="strong">packge</emphasis> directory
zh: 打包後的原始碼樹快照：<emphasis role="strong">packge</emphasis> 目錄

note: type: Content of: <book><chapter><section><itemizedlist><listitem><simpara>
en: snapshot source tree image after the <emphasis role="strong">debuild</emphasis> command: the <emphasis role="strong">test</emphasis> directory
zh: 執行 <emphasis role="strong">debuild</emphasis> 命令後的原始碼樹快照：<emphasis role="strong">test</emphasis> 目錄

note: type: Content of: <book><appendix><title>
en: <emphasis role="strong">debmake</emphasis>(1) manpage
zh: <emphasis role="strong">debmake</emphasis>(1) 手冊頁

note: type: Content of: <book><appendix><section><title>
en: NAME
zh: 名稱

note: type: Content of: <book><appendix><section><simpara>
en: debmake - program to make a Debian source package
zh: debmake，用來製作 Debian 原始碼套件的程式

note: type: Content of: <book><appendix><section><title>
en: SYNOPSIS
zh: 概述

note: type: Content of: <book><appendix><section><simpara>
en: <emphasis role="strong">debmake</emphasis> [<emphasis role="strong">-h</emphasis>] [<emphasis role="strong">-c</emphasis> | <emphasis role="strong">-k</emphasis>] [<emphasis role="strong">-n</emphasis> | <emphasis role="strong">-a</emphasis> <emphasis>package-version</emphasis><emphasis role="strong">.orig.tar.gz</emphasis> | <emphasis role="strong">-d</emphasis> | <emphasis role="strong">-t</emphasis> ] [<emphasis role="strong">-p</emphasis> <emphasis>package</emphasis>] [<emphasis role="strong">-u</emphasis> <emphasis>version</emphasis>] [<emphasis role="strong">-r</emphasis> <emphasis>revision</emphasis>] [<emphasis role="strong">-z</emphasis> <emphasis>extension</emphasis>] [<emphasis role="strong">-b</emphasis> "<emphasis>binarypackage</emphasis><emphasis><phrase role=":__type__">, …</phrase></emphasis>]" [<emphasis role="strong">-e</emphasis> <emphasis>foo@example.org</emphasis>] [<emphasis role="strong">-f</emphasis> "<emphasis>firstname lastname</emphasis>"] [<emphasis role="strong">-i</emphasis> "<emphasis>buildtool</emphasis>" | <emphasis role="strong">-j</emphasis>] [<emphasis role="strong">-l</emphasis> <emphasis>license_file</emphasis>] [<emphasis role="strong">-m</emphasis>] [<emphasis role="strong">-o</emphasis> <emphasis>file</emphasis>] [<emphasis role="strong">-q</emphasis>] [<emphasis role="strong">-s</emphasis>] [<emphasis role="strong">-v</emphasis>] [<emphasis role="strong">-w</emphasis> "<emphasis>addon, …</emphasis>"] [<emphasis role="strong">-x</emphasis> [01234]] [<emphasis role="strong">-y</emphasis>] [<emphasis role="strong">-L</emphasis>] [<emphasis role="strong">-P</emphasis>] [<emphasis role="strong">-T</emphasis>]
zh: <emphasis role="strong">debmake</emphasis> [<emphasis role="strong">-h</emphasis>] [<emphasis role="strong">-c</emphasis> | <emphasis role="strong">-k</emphasis>] [<emphasis role="strong">-n</emphasis> | <emphasis role="strong">-a</emphasis> <emphasis>套件名-版本號</emphasis><emphasis role="strong">.orig.tar.gz</emphasis> | <emphasis role="strong">-d</emphasis> | <emphasis role="strong">-t</emphasis> ] [<emphasis role="strong">-p</emphasis> <emphasis>package</emphasis>] [<emphasis role="strong">-u</emphasis> <emphasis>version</emphasis>] [<emphasis role="strong">-r</emphasis> <emphasis>修訂號</emphasis>] [<emphasis role="strong">-z</emphasis> <emphasis>擴充套件</emphasis>] [<emphasis role="strong">-b</emphasis> "<emphasis>binarypackage</emphasis><emphasis><phrase role=":__type__">, …</phrase></emphasis>]" [<emphasis role="strong">-e</emphasis> <emphasis>foo@example.org</emphasis>] [<emphasis role="strong">-f</emphasis> "<emphasis>名稱 姓氏</emphasis>"] [<emphasis role="strong">-i</emphasis> "<emphasis>構建工具</emphasis>" | <emphasis role="strong">-j</emphasis>] [<emphasis role="strong">-l</emphasis> <emphasis>license_file</emphasis>] [<emphasis role="strong">-m</emphasis>] [<emphasis role="strong">-o</emphasis> <emphasis>file</emphasis>] [<emphasis role="strong">-q</emphasis>] [<emphasis role="strong">-s</emphasis>] [<emphasis role="strong">-v</emphasis>] [<emphasis role="strong">-w</emphasis> "<emphasis>addon, …</emphasis>"] [<emphasis role="strong">-x</emphasis> [01234]] [<emphasis role="strong">-y</emphasis>] [<emphasis role="strong">-L</emphasis>] [<emphasis role="strong">-P</emphasis>] [<emphasis role="strong">-T</emphasis>]

note: type: Content of: <book><appendix><section><title>
en: DESCRIPTION
zh: 描述

note: type: Content of: <book><appendix><section><simpara>
en: <emphasis role="strong">debmake</emphasis> helps to build a Debian package from the upstream source.  Normally, this is done as follows:
zh: <emphasis role="strong">debmake</emphasis> 協助從上游原始碼構建一個 Debian 套件，通常做法如下：

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: It is untarred to create many files under the <emphasis>package-version/</emphasis> directory.
zh: 對其進行解壓縮並將所有檔案放置於 <emphasis>package-version/</emphasis> 目錄之下。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: debmake is invoked in the <emphasis>package-version/</emphasis> directory, possibly without any arguments.
zh: 在 <emphasis>package-version/</emphasis> 目錄中呼叫 debmake，並按需帶上引數。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: Files in the <emphasis>package-version</emphasis><emphasis role="strong">/debian/</emphasis> directory are manually adjusted.
zh: 手工調整 <emphasis>package-version</emphasis><emphasis role="strong">/debian/</emphasis> 目錄下的檔案。

note: type: Content of: <book><appendix><section><section><title>
en: optional arguments:
zh: 可選引數：

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: show this help message and exit.
zh: 顯示本幫助資訊並退出。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: scan source for copyright+license text and exit.
zh: 為授權+許可證文字而掃描原始碼，然後退出。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-c</emphasis>: simple output style
zh: <emphasis role="strong">-c</emphasis>：簡單輸出風格

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-cc</emphasis>: normal output style (similar to the <emphasis role="strong">debian/copyright</emphasis> file)
zh: <emphasis role="strong">-cc</emphasis>：正常輸出風格（類似 <emphasis role="strong">debian/copyright</emphasis> 檔案）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-ccc</emphasis>: debug output style
zh: <emphasis role="strong">-ccc</emphasis>：除錯輸出風格

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: compare the <emphasis role="strong">debian/copyright</emphasis> file with the source and exit.
zh: 對 <emphasis role="strong">debian/copyright</emphasis> 檔案和原始碼進行比較並退出。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The <emphasis role="strong">debian/copyright</emphasis> file must be organized to list the generic file patterns before the specific exceptions.
zh: <emphasis role="strong">debian/copyright</emphasis> 必須將通用的檔案匹配模式放在前部並將個別檔案的例外放在後部。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-k</emphasis>: basic output style
zh: <emphasis role="strong">-k</emphasis>：基本輸出風格

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-kk</emphasis>: verbose output style
zh: <emphasis role="strong">-kk</emphasis>：冗長輸出風格

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: make a native Debian source package without <emphasis role="strong">.orig.tar.gz</emphasis>.  This makes a “<emphasis role="strong">3.0 (native)</emphasis>” format package.
zh: 製作一個原生 Debian 原始碼套件，即不涉及 <emphasis role="strong">.orig.tar.gz</emphasis>。這樣將製作一個“<emphasis role="strong">3.0 (native)</emphasis>”格式的包。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: If you are thinking of packaging a Debian-specific source tree with <emphasis role="strong">debian/</emphasis>* in it into a native Debian package, please think otherwise.  You can use the “<emphasis role="strong">debmake -d -i debuild</emphasis>” or “<emphasis role="strong">debmake -t -i debuild</emphasis>” commands to make a “<emphasis role="strong">3.0 (quilt)</emphasis>” format non-native Debian package.  The only difference is that the <emphasis role="strong">debian/changelog</emphasis> file must use the non-native version scheme: <emphasis>version-revision</emphasis>.  The non-native package is more friendly to downstream distributions.
zh: 如果您正打算打包一個含 <emphasis role="strong">debian/</emphasis>* 目錄的 Debian 特有的原始碼樹成為一個 Debian 原生套件的話，還請三思。您可以使用“<emphasis role="strong">debmake -d -i debuild</emphasis>”或者“<emphasis role="strong">debmake -t -i debuild</emphasis>”命令來建立一個“<emphasis role="strong">3.0 (quilt)</emphasis>”格式的非原生 Debian 套件。唯一的區別是 <emphasis role="strong">debian/changelog</emphasis> 檔案必須使用非原生套件對應的命名規範：<emphasis>版本號-修訂號</emphasis>。非原生的套件對下游發行版更友好。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: use the upstream source tarball directly. (<emphasis role="strong">-p</emphasis>, <emphasis role="strong">-u</emphasis>, <emphasis role="strong">-z</emphasis>: overridden)
zh: 直接使用上游原始碼壓縮包。（<emphasis role="strong">-p</emphasis>, <emphasis role="strong">-u</emphasis>, <emphasis role="strong">-z</emphasis>：被覆蓋）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The upstream tarball may be specified as <emphasis>package_version</emphasis><emphasis role="strong">.orig.tar.gz</emphasis> and <emphasis role="strong">tar.gz</emphasis>.  For other cases, it may be <emphasis role="strong">tar.bz2</emphasis>, or <emphasis role="strong">tar.xz</emphasis>.
zh: 上游原始碼壓縮包可以命名為 <emphasis>package_version</emphasis><emphasis role="strong">.orig.tar.gz</emphasis> 或者 <emphasis role="strong">tar.gz</emphasis>。在某些情況下，也可使用 <emphasis role="strong">tar.bz2</emphasis> 或 <emphasis role="strong">tar.xz</emphasis>。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: If the specified upstream tarball name contains uppercase letters, the Debian package name is generated by converting them to lowercase letters.
zh: 如果所指定的原始碼壓縮包檔名中包含大寫字母，Debian 打包時生成的名稱會將其轉化為小寫字母。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: If the specified argument is the URL (http://, https://, or ftp://) to the upstream tarball, the upstream tarball is downloaded from the URL using <emphasis role="strong">wget</emphasis> or <emphasis role="strong">curl</emphasis>.
zh: 如果所指定的引數是一個指向上游原始碼壓縮包的 URL（http://、https:// 或 ftp://），程式將會使用 <emphasis role="strong">wget</emphasis> 或 <emphasis role="strong">curl</emphasis> 下載這個壓縮包。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: run the “make dist” command equivalents first to generate the upstream tarball and use it.
zh: 先執行“make dist”命令或其等效命令以生成上游原始碼壓縮包並在打包過程中使用。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The “<emphasis role="strong">debmake -d</emphasis>” command is designed to run in the <emphasis>package/</emphasis> directory hosting the upstream VCS with the build system supporting the “<emphasis role="strong">make dist</emphasis>” command equivalents.  (automake/autoconf, Python distutils, …)
zh: “<emphasis role="strong">debmake -d</emphasis>”命令設計用於在 <emphasis>套件名/</emphasis> 目錄下使用了上游版本控制系統的場景，且其構建系統支持“<emphasis role="strong">make dist</emphasis>”或其等效命令。（如 automake/autoconf、Python distutils 等等）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: run the “<emphasis role="strong">tar</emphasis>” command to generate the upstream tarball and use it.
zh: 執行“<emphasis role="strong">tar</emphasis>”命令以生成上游原始碼壓縮包並在打包過程中使用。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The “<emphasis role="strong">debmake -t</emphasis>” command is designed to run in the <emphasis>package/</emphasis> directory hosting the upstream VCS.  Unless you provide the upstream version with the <emphasis role="strong">-u</emphasis> option or with the <emphasis role="strong">debian/changelog</emphasis> file, a snapshot upstream version is generated in the <emphasis role="strong">0~%y%m%d%H%M</emphasis> format, e.g., <emphasis>0~1403012359</emphasis>, from the UTC date and time.  The generated tarball excludes the <emphasis role="strong">debian/</emphasis> directory found in the upstream VCS. (It also excludes typical VCS directories: <emphasis role="strong">.git/ .hg/ .svn/ .CVS/</emphasis>.)
zh: “<emphasis role="strong">debmake -t</emphasis>”命令設計用於在 <emphasis>套件名/</emphasis> 目錄下使用了上游版本控制系統的場景。除非您使用了 <emphasis role="strong">-u</emphasis> 選項或者使用 <emphasis role="strong">debian/changelog</emphasis> 檔案提供了上游版本號，預設情況下程式將運用協調世界時日期和時間按照 <emphasis role="strong">0~%y%m%d%H%M</emphasis> 的格式作為快照的上游版本號，例如 <emphasis>0~1403012359</emphasis>。所生成的壓縮包將排除上游版本控制系統中的 <emphasis role="strong">debian/</emphasis> 目錄。（它也會排除常見的版本控制系統目錄：<emphasis role="strong">.git/ .hg/ .svn/ .CVS/</emphasis>。）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-p</emphasis> <emphasis>package</emphasis>, <emphasis role="strong">--package</emphasis> <emphasis>package</emphasis>
zh: <emphasis role="strong">-p</emphasis> <emphasis>套件名</emphasis>, <emphasis role="strong">--package</emphasis> <emphasis>套件名</emphasis>

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: set the Debian package name.
zh: 設定 Debian 套件名稱。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-u</emphasis> <emphasis>version</emphasis>, <emphasis role="strong">--upstreamversion</emphasis> <emphasis>version</emphasis>
zh: <emphasis role="strong">-u</emphasis> <emphasis>上游版本號</emphasis>, <emphasis role="strong">--upstreamversion</emphasis> <emphasis>版本號</emphasis>

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: set the upstream package version.
zh: 設定上游套件版本。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-r</emphasis> <emphasis>revision</emphasis>, <emphasis role="strong">--revision</emphasis> <emphasis>revision</emphasis>
zh: <emphasis role="strong">-r</emphasis> <emphasis>修訂號</emphasis>, <emphasis role="strong">--revision</emphasis> <emphasis>修訂號</emphasis>

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: set the Debian package revision.
zh: 設定 Debian 套件修訂號。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-z</emphasis> <emphasis>extension</emphasis>, <emphasis role="strong">--targz</emphasis> <emphasis>extension</emphasis>
zh: <emphasis role="strong">-z</emphasis> <emphasis>副檔名</emphasis>, <emphasis role="strong">--targz</emphasis> <emphasis>副檔名</emphasis>

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: set the tarball type, <emphasis>extension</emphasis>=(<emphasis role="strong">tar.gz</emphasis>|<emphasis role="strong">tar.bz2</emphasis>|<emphasis role="strong">tar.xz</emphasis>). (alias: <emphasis role="strong">z</emphasis>, <emphasis role="strong">b</emphasis>, <emphasis role="strong">x</emphasis>)
zh: 設定原始碼壓縮包型別，<emphasis>副檔名</emphasis>=(<emphasis role="strong">tar.gz</emphasis>|<emphasis role="strong">tar.bz2</emphasis>|<emphasis role="strong">tar.xz</emphasis>)。（別名：<emphasis role="strong">z</emphasis>, <emphasis role="strong">b</emphasis>, <emphasis role="strong">x</emphasis>）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: set e-mail address.
zh: 設定電子郵件地址。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The default is taken from the value of the environment variable <emphasis role="strong">$DEBEMAIL</emphasis>.
zh: 預設值為環境變數 <emphasis role="strong">$DEBEMAIL</emphasis> 的值。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-f</emphasis> "<emphasis>firstname lastname</emphasis>", <emphasis role="strong">--fullname</emphasis> "<emphasis>firstname lastname</emphasis>"
zh: <emphasis role="strong">-f</emphasis> "<emphasis>名稱 姓氏</emphasis>", <emphasis role="strong">--fullname</emphasis> "<emphasis>名稱 姓氏</emphasis>"

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: set the fullname.
zh: 設定全名。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The default is taken from the value of the environment variable <emphasis role="strong">$DEBFULLNAME</emphasis>.
zh: 預設值為環境變數 <emphasis role="strong">$DEBFULLNAME</emphasis> 的值。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-i</emphasis> "<emphasis>buildtool</emphasis>", <emphasis role="strong">--invoke</emphasis> "<emphasis>buildtool</emphasis>"
zh: <emphasis role="strong">-i</emphasis> "<emphasis>構建工具</emphasis>", <emphasis role="strong">--invoke</emphasis> "<emphasis>構建工具</emphasis>"

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The default is not to execute any program.
zh: 預設情況是不執行任何程式。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: Setting this option automatically sets the <emphasis role="strong">--local</emphasis> option.
zh: 設定該選項也會自動設定 <emphasis role="strong">--local</emphasis> 選項。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: run <emphasis role="strong">dpkg-depcheck</emphasis> to judge build dependencies and identify file paths.  Log files are in the parent directory.
zh: 執行 <emphasis role="strong">dpkg-depcheck</emphasis> 以檢查構建依賴和檔案路徑。檢查日誌將儲存在父目錄下。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis>package</emphasis><emphasis role="strong">.build-dep.log</emphasis>: Log file for <emphasis role="strong">dpkg-depcheck</emphasis>.
zh: <emphasis>套件名</emphasis><emphasis role="strong">.build-dep.log</emphasis>：<emphasis role="strong">dpkg-depcheck</emphasis> 的日誌檔案。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis>package</emphasis><emphasis role="strong">.install.log</emphasis>: Log file recording files in the <emphasis role="strong">debian/tmp</emphasis> directory.
zh: <emphasis>套件名</emphasis><emphasis role="strong">.install.log</emphasis>：記錄 <emphasis role="strong">debian/tmp</emphasis> 目錄下所安裝檔案的日誌。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-l</emphasis> "<emphasis>license_file,…</emphasis>", <emphasis role="strong">--license</emphasis> "<emphasis>license_file,…</emphasis>"
zh: <emphasis role="strong">-l</emphasis> "<emphasis>許可證檔案,…</emphasis>", <emphasis role="strong">--license</emphasis> "<emphasis>許可證檔案,…</emphasis>"

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: add formatted license text to the end of the <emphasis role="strong">debian/copyright</emphasis> file holding license scan results.
zh: 在存放許可證掃描結果的 <emphasis role="strong">debian/copyright</emphasis> 檔案末尾新增格式化後的許可證文字。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The default is to add <emphasis role="strong">COPYING</emphasis> and <emphasis role="strong">LICENSE</emphasis>, and <emphasis>license_file</emphasis> needs to list only the additional file names all separated by “<emphasis role="strong">,</emphasis>”.
zh: 預設值是新增 <emphasis role="strong">COPYING</emphasis> 和 <emphasis role="strong">LICENSE</emphasis> 檔案，您只需要在<emphasis>許可證檔案</emphasis>部分新增額外的檔名即可，並使用“<emphasis role="strong">,</emphasis>”分隔各個檔名。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: force packages to be non-multiarch.
zh: 強制套件不使用多架構特性。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><term>
en: <emphasis role="strong">-o</emphasis> <emphasis>file</emphasis>, <emphasis role="strong">--option</emphasis> <emphasis>file</emphasis>
zh: <emphasis role="strong">-o</emphasis> <emphasis>檔案</emphasis>, <emphasis role="strong">--option</emphasis> <emphasis>檔案</emphasis>

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: read optional parameters from <emphasis>file</emphasis>. (This is not for everyday use.)
zh: 從指定<emphasis>file</emphasis>讀取可選引數。（這個選項不適合日常使用。）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: quit early before creating files in the <emphasis role="strong">debian/</emphasis> directory.
zh: 在建立 <emphasis role="strong">debian/</emphasis> 目錄下的檔案之前即提前退出程式。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: use upstream spec (setup.py for Python, etc.) for the package description.
zh: 使用上游配置檔案（例如 Python 裡的 setup.py 等）資訊來初始化套件描述內容。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: show version information.
zh: 顯示版本資訊。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: add extra arguments to the <emphasis role="strong">--with</emphasis> option of the <emphasis role="strong">dh</emphasis>(1) command as <emphasis>addon</emphasis> in <emphasis role="strong">debian/rules</emphasis>.
zh: 在 <emphasis role="strong">debian/rules</emphasis> 檔案中在 <emphasis role="strong">dh</emphasis>(1) 命令的引數中新增額外的 <emphasis role="strong">dh</emphasis>(1) 引數以指定所使用的附加元件（<emphasis>addon</emphasis>）。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: generate configuration files as templates.  (Please note <emphasis role="strong">debian/changelog</emphasis>, <emphasis role="strong">debian/control</emphasis>, <emphasis role="strong">debian/copyright</emphasis>, and <emphasis role="strong">debian/rules</emphasis> are bare minimum configuration files to build a Debian binary package.)
zh: 以模板檔案的形式建立配置檔案（請注意 <emphasis role="strong">debian/changelog</emphasis>、<emphasis role="strong">debian/control</emphasis>、<emphasis role="strong">debian/copyright</emphasis> 和 <emphasis role="strong">debian/rules</emphasis> 檔案是構建 Debian 二進位制套件所需的最小文件集合。）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: The number <emphasis>n</emphasis> determines which configuration templates are generated.
zh: <emphasis>n</emphasis> 的數字大小決定了生成哪些配置模板檔案。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-x0</emphasis>: bare minimum configuration files. (default option if any of bare minimum configuration files already exist)
zh: <emphasis role="strong">-x0</emphasis>：最少的配置檔案（這是存在任何已有配置檔案時的預設選項）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-x1</emphasis>: all <emphasis role="strong">-x0</emphasis> files + desirable configuration files for the single binary package. (default option for the single binary package if none of bare minimum configuration files exist)
zh: <emphasis role="strong">-x1</emphasis>：所有 <emphasis role="strong">-x0</emphasis> 提供的檔案以及用於生成單個二進位制套件可能需要的配置檔案。（這是隻生成單個二進位制套件，且不存在其它已有配置檔案時的預設選項）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-x2</emphasis>: all <emphasis role="strong">-x1</emphasis> files + desirable configuration files for the multi binary package. (default option for the multi binary package if none of bare minimum configuration files exist)
zh: <emphasis role="strong">-x2</emphasis>：所有 <emphasis role="strong">-x2</emphasis> 提供的檔案以及用於生成多個二進位制套件可能需要的配置檔案。（這是生成多個二進位制套件，且不存在其它已有配置檔案時的預設選項）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-x3</emphasis>: all <emphasis role="strong">-x2</emphasis> files + unusual configuration template files. Unsual configuration template files are generated with the extra <emphasis role="strong">.ex</emphasis> suffix to ease their removal. To use these as configuration files, rename their file names to ones without the <emphasis role="strong">.ex</emphasis> suffix.
zh: <emphasis role="strong">-x3</emphasis>：所有 <emphasis role="strong">-x2</emphasis> 提供的檔案以及不常使用的配置模板檔案。不常使用的配置模板檔案在生成時會帶上 <emphasis role="strong">.ex</emphasis> 字尾名以方便對其刪除。如需使用這些配置檔案，請重新命名這些檔案並去除 <emphasis role="strong">.ex</emphasis> 的字尾。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><itemizedlist><listitem><simpara>
en: <emphasis role="strong">-x4</emphasis>: all <emphasis role="strong">-x3</emphasis> files + copyright file examples.
zh: <emphasis role="strong">-x4</emphasis> 選項：全部配置 <emphasis role="strong">-x3</emphasis> 檔案加版權宣告檔案範例。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: “force yes” for all prompts. (without option: “ask [Y/n]”; doubled option: “force no”)
zh: 對所有提示“強制選擇是”（不提示選項“詢問 [是/否]”；重複選項兩次則為“強制選擇否”）

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: generate configuration files for the local package to fool <emphasis role="strong">lintian</emphasis>(1) checks.
zh: 為本地套件生成配置檔案以繞過 <emphasis role="strong">lintian</emphasis>(1) 的檢查。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: pedantically check auto-generated files.
zh: 對自動生成的檔案進行嚴格（甚至古板到迂腐程度）的檢查。

note: type: Content of: <book><appendix><section><section><variablelist><varlistentry><listitem><simpara>
en: output tutorial comment lines in template files.
zh: 在模板檔案中輸出教材註釋行。

note: type: Content of: <book><appendix><section><title>
en: EXAMPLES
zh: 範例

note: type: Content of: <book><appendix><section><simpara>
en: For a well behaving source, you can build a good-for-local-use installable single Debian binary package easily with one command.  Test install of such a package generated in this way offers a good alternative to the traditional “<emphasis role="strong">make install</emphasis>” command installing into the <emphasis role="strong">/usr/local</emphasis> directory since the Debian package can be removed cleanly by the “<emphasis role="strong">dpkg -P</emphasis> <emphasis>…”</emphasis> command. Here are some examples of how to build such test packages. (These should work in most cases.  If the <emphasis role="strong">-d</emphasis> option does not work, try the <emphasis role="strong">-t</emphasis> option instead.)
zh: 對比較正常的原始碼來說，您可以使用一行命令簡單地構建一個自用的 Debian 二進位制套件。測試安裝這樣生成的套件通常比傳統的“<emphasis role="strong">make install</emphasis>”命令安裝至 <emphasis role="strong">/usr/local</emphasis> 目錄更好，因為 Debian 套件可以使用“<emphasis role="strong">dpkg -P</emphasis> <emphasis>…”</emphasis>”命令更乾淨地解除安裝掉。這裡提供構建這類測試套件的一些例子（這些例子應該在大多數情況下足夠使用。如果 <emphasis role="strong">-d</emphasis> 選項無法工作，請嘗試使用 <emphasis role="strong">-t</emphasis> 選項。）

note: type: Content of: <book><appendix><section><simpara>
en: For a typical C program source tree packaged with autoconf/automake:
zh: 對典型的使用 autoconf/automake 的 C 程式原始碼樹：

note: type: Content of: <book><appendix><section><simpara>
en: For a typical Perl module in the <emphasis>package-version</emphasis><emphasis role="strong">.tar.gz</emphasis> archive:
zh: 對於典型的以 <emphasis>package-version</emphasis><emphasis role="strong">.tar.gz</emphasis> 歸檔提供的 Perl 模組：

note: type: Content of: <book><appendix><section><title>
en: HELPER PACKAGES
zh: 幫助套件

note: type: Content of: <book><appendix><section><simpara>
en: Packaging may require installation of some additional specialty helper packages.
zh: 打包工作也許需要額外安裝一些專用的幫助套件。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: The Autotools (Autoconf + Automake) build system may require <emphasis role="strong">autotools-dev</emphasis> or <emphasis role="strong">dh-autoreconf</emphasis> package.
zh: Autotools (Autoconf + Automake) 構建系統可能需要 <emphasis role="strong">autotools-dev</emphasis> 或 <emphasis role="strong">dh-autoreconf</emphasis> 套件。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: Ruby programs may require the <emphasis role="strong">gem2deb</emphasis> package.
zh: Ruby 程式可能需要 <emphasis role="strong">gem2deb</emphasis> 套件。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: Java programs may require the <emphasis role="strong">javahelper</emphasis> package.
zh: Java 程式可能需要 <emphasis role="strong">javahelper</emphasis> 套件。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: Gnome programs may require the <emphasis role="strong">gobject-introspection</emphasis> package.
zh: Gnome 程式可能需要 <emphasis role="strong">gobject-introspection</emphasis> 套件。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: etc.
zh: 等等。

note: type: Content of: <book><appendix><section><title>
en: CAVEAT
zh: 注意事項

note: type: Content of: <book><appendix><section><title>
en: DEBUG
zh: 除錯

note: type: Content of: <book><appendix><section><simpara>
en: Please report bugs to the <emphasis role="strong">debmake</emphasis> package using the <emphasis role="strong">reportbug</emphasis> command.
zh: 請使用 <emphasis role="strong">reportbug</emphasis> 命令報告 <emphasis role="strong">debmake</emphasis> 套件的問題與錯誤。

note: type: Content of: <book><appendix><section><simpara>
en: The character set in the environment variable <emphasis role="strong">$DEBUG</emphasis> determines the logging output level.
zh: 環境變數 <emphasis role="strong">$DEBUG</emphasis> 中設定的字元用來確定日誌輸出等級。

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">i</emphasis>: print information
zh: <emphasis role="strong">i</emphasis>：列印資訊

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">p</emphasis>: list all global parameters
zh: <emphasis role="strong">p</emphasis>：列出全部全域性引數

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">d</emphasis>: list parsed parameters for all binary packages
zh: <emphasis role="strong">d</emphasis>：列出所有二進位制套件解析得到的引數

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">f</emphasis>: input filename for the copyright scan
zh: <emphasis role="strong">f</emphasis>：用於掃描授權資訊的輸入檔名

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">y</emphasis>: year/name split of copyright line
zh: <emphasis role="strong">y</emphasis>：授權資訊欄的年份/名稱切分資訊

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">s</emphasis>: line scanner for format_state
zh: <emphasis role="strong">s</emphasis>：format_state 的行掃描器

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">b</emphasis>: content_state scan loop: begin-loop
zh: <emphasis role="strong">b</emphasis>：content_state 掃描迴圈：迴圈開始

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">m</emphasis>: content_state scan loop: after regex match
zh: <emphasis role="strong">m</emphasis>: content_state 掃描迴圈：正則匹配之後

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">e</emphasis>: content_state scan loop: end-loop
zh: <emphasis role="strong">e</emphasis>: content_state 掃描迴圈：迴圈結束

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">c</emphasis>: print copyright section text
zh: <emphasis role="strong">c</emphasis>：列印授權區段文字

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">l</emphasis>: print license section text
zh: <emphasis role="strong">l</emphasis>：列印許可證區段文字

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">a</emphasis>: print author/translator section text
zh: <emphasis role="strong">a</emphasis>：列印作者/翻譯者區段文字

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">k</emphasis>: sort key for debian/copyright stanza
zh: <emphasis role="strong">k</emphasis>：debian/copyright 各節的排序關鍵字

note: type: Content of: <book><appendix><section><itemizedlist><listitem><simpara>
en: <emphasis role="strong">n</emphasis>: scan result of debian/copyright (“<emphasis role="strong">debmake -k</emphasis>”)
zh: <emphasis role="strong">n</emphasis>：debian/copyright 的掃描結果（“<emphasis role="strong">debmake -k</emphasis>”）

note: type: Content of: <book><appendix><section><simpara>
en: Use this as:
zh: 用法如下：

note: type: Content of: <book><appendix><section><simpara>
en: See README.developer in the source for more.
zh: 檢視原始碼中的 README.developer 檔案以瞭解更多資訊。

note: type: Content of: <book><appendix><section><title>
en: AUTHOR
zh: 作者

note: type: Content of: <book><appendix><section><title>
en: LICENSE
zh: 許可證

note: type: Content of: <book><appendix><section><simpara>
en: Expat License
zh: Expat 許可證

note: type: Content of: <book><appendix><section><title>
en: SEE ALSO
zh: 參見

note: type: Content of: <book><appendix><section><simpara>
en: The <emphasis role="strong">debmake-doc</emphasis> package provides the “Guide for Debian Maintainers” in plain text, HTML and PDF formats under the <emphasis role="strong">/usr/share/doc/debmake-doc/</emphasis> directory.
zh: <emphasis role="strong">debmake-doc</emphasis> 套件提供了“Debian 維護者指南”手冊，以純文字、HTML 和 PDF 三種格式存放在 <emphasis role="strong">/usr/share/doc/debmake-doc/</emphasis> 目錄下。
