Debhelperによるパッケージング
重要 要件: 「一からパッケージ化する」というセクションの要件とdebhelperとdh-make パッケージャーとして、前のセクションで行ったように、最初からパッケージを作成することはめったにありません。あなたが想像することができるように、 ルール たとえば、ファイルはパッケージに共通です。梱包をより簡単かつ効率的にするために、 debhelper これらの作業を支援します。 DebhelperはPerlスクリプトのセットです(プレフィックスは dh_これはパッケージ構築のプロセスを自動化するものです。これらのスクリプトを使うと、Debianパッケージの構築は非常に簡単になります。 この例では、GNU Helloパッケージをもう一度ビルドしますが、今度はUbuntuとの比較を行います hello-debhelper パッケージ。ここでも、作業するディレクトリを作成します。 次に、Ubuntuソースパッケージを入手してください: 前の例と同様に、最初に行う必要があるのは元の(上流の)タールボールを解凍することです。 上流のtarballをコピーする代わりに hello_2.1.1.orig.tar.gz 前の例で行ったように、 dh_make 私たちのために仕事をしなさい。あなたがしなければならない唯一のことは、ソースフォルダの名前を変更して、それが
ソースの最初の「デバイアン化」を作成するには dh_make. dh_makeはあなたに一連の質問をします: あぶない 実行のみ dh_make -e 一度。初めて実行した後に再度実行すると、正常に動作しません。それを変更したい場合や間違えた場合は、ソースディレクトリを削除して、アップストリームのtarballを新たに展開してください。その後、ソースディレクトリに移行して再試行できます。 ランニング dh_make -e 2つのことがあります: ザ こんにちは プログラムはそれほど複雑ではなく、 "Scratch From Packaging"のセクションで見たように、パッケージングは基本ファイル以上のものを必要としません。したがって、 .exex ファイル: にとって こんにちは、あなたはまたないでしょう * ライセンス * Ubuntuパッケージングガイド索引 必要 README.Debian (プログラムのREADMEではなく、特定のDebianの問題のためのREADMEファイル) Dirs (によって使われた dh_installdirs 必要なディレクトリを作成する) ドキュメント (によって使われた dh_installdocs プログラムのマニュアルをインストールする場合)、または 情報 (によって使われた dh_installinfo infoファイルをインストールする)ファイルを デビアン ディレクトリ。これらのファイルの詳細については、「dh_makeのサンプルファイル」を参照してください。 この時点では、 変更履歴, compat, コントロール, 著作権、および ルール のファイル デビアン ディレクトリ。 「ゼロからパッケージ化する」というセクションから、新しいファイルは compatこれは、 debhelper バージョン(この場合は4)が使用されます。 あなたは調整する必要があります 変更履歴この場合、このパッケージの名前が hello-debhelper 単に こんにちは: 使用することによって debhelper、私たちが変える必要があるのは コントロール 名前です(代替 こんにちは にとって hello-debhelper)と追加する debhelper(> = 4.0.0) 〜に ビルド依存 ソースパッケージのフィールド。のためのUbuntuパッケージ hello-debhelper 次のようになります。 私たちは 著作権 ファイルと postinst そして プレーム Ubuntuのスクリプト hello-debhelper 「最初からパッケージ化」というセクション以降は変更されていないため、また、 ルール 私たちはそれを調べることができます。 最後に見なければならないファイルは、次のとおりです。 ルールここで、 debhelper スクリプトを見ることができます。ザ debhelper バージョン ルール (ルールのセクションからバージョンでは72ラインではなく54ラインです)。 ザ debhelper バージョンは次のようになります: build build binary-indep:install#このパッケージで生成されたアーキテクチャに依存しないファイルはありません。そこにあれがあれば、#ここに作られるでしょう。 binary-arch:install dh_testdir -a dh_testroot -a dh_installdocs -a NEWS dh_installchangelogs -a変更ログdh_strip -a dh_compress -a dh_fixperms -a dh_installdeb -a dh_shlibdeps -a dh_gencontrol -a dh_md5sums -a dh_builddeb -aバイナリ:binary-indep binary- arch .PHONY:バイナリバイナリアーチバイナリ独立クリーンルート あなたが正しいディレクトリにいるかどうかをテストするようなタスク(dh_testdir)、ルート権限でパッケージをビルドしていることを確認する(dh_testroot)、ドキュメントをインストールする(dh_installdocs そして dh_installchangelogs)、ビルド後のクリーンアップ(dh_clean)は自動的に処理されます。多くのパッケージは こんにちは 持ってる ルール ファイルは大きくないので debhelper スクリプトはほとんどのタスクを処理します。完全なリストについては debhelper スクリプトについては、「List of debhelper スクリプト "と呼ばれています。 おとこ ページ。上記で使用された各ヘルパースクリプトのマニュアルページ(よく書かれていて長すぎないもの)を読むのは便利な練習です ルール ファイル。




