Debian パッケージには依存関係があり、次のバイナリを配布します。ttyecho
?
答え1
クリーンなchrootからパッケージをビルドし、パッケージが正常にビルドされるために必要なビルド依存関係を追加します。一部のランタイム依存関係は、ビルド依存関係に基づいて自動的に生成されます。必要なビルド依存関係を追加したら、同様のクリーンなchrootで生成されたパッケージをインストールして実行し、正しく機能していることを確認してください。
これを行うのに役立つツールにはsbuild
、schroot
特に、pbuilder
いくつかのスクリプトが含まれています。ubuntu-dev-tools
mk-sbuild
進捗方法についてもう少し具体的な質問がある場合は、コメントを残してください。別の質問(または質問)が必要な場合があります。
答え2
ほとんどの場合、依存関係は自動的に決定されるため、心配する必要はありません。インストールするdh-makedh_make
テンプレートを生成するコマンドをパッケージ化して呼び出します。中に基本チュートリアルがあります。Debian 管理者マニュアル。
ディレクトリttyecho-1
(パッケージ名、ハイフン、バージョン番号)を作成し、そこにソースファイルを置きます。このディレクトリでdh_make --createorig
質問を実行して回答してください。コンパイルされたプログラムをビルドしているので、基本的な単一のバイナリパッケージが必要です。プログラムdh_make
は、必要なすべてのメタデータファイルといくつかのオプションのファイルのテンプレートを生成します。生成されたcontrol
ファイルには次の行があります。
Depends: ${shlibs:Depends}, ${misc:Depends}
${…}
パッケージをビルドすると、これらの部分は自動的に生成された依存関係に置き換えられます。この魔法は誰かが作ったものです。dh_shlibdeps
。
debian/copyright
そして、人の入力が必要な部分を埋めることに加えて、debian/control
この単純なパッケージに対して行われるべきことはすべて、ttyecho
バイナリをインストールする必要があると宣言するだけです。次の内容を含むファイルを作成します/usr/bin
。debian/ttyecho.install
ttyecho /usr/bin
これでdpkg-buildpackage -rfakeroot
or./debian/rules binary
とdh-makeを実行すると、すべてが処理されます。