dh_auto_installとdh_installが同じディレクトリを使用しないのはなぜですか?

dh_auto_installとdh_installが同じディレクトリを使用しないのはなぜですか?

以下を使用してソースから単一のパッケージをビルドしようとしています。dpkg ビルドパッケージdh_auto_install呼び出され、ある時点で実行されます。make install DESTDIR=/somewhere/debian/package-name

それからdh_install呼び出されますが、.orでのみ検索してください!debian/tmpでは検索しません。debian/package-name

同様の情報を取得します。

dh_install: Cannot find (any matches for) "usr/include/*" (tried in ., debian/tmp)

同じディレクトリですべて利用できるようにするにはどうすればよいですか?

(複数のパッケージをビルドしようとすると問題はありません。)(compat 9)

答え1

私はあなたのソースパッケージがバイナリパッケージを構築すると思います。つまり、セクションがdebian/controlありますPackage:。この場合、dh_auto_installファイルをインストールしdebian/packageてから十分であるとします。つまりdebian/package完了すると、インストールに必要なすべてのファイルが正しい場所に配置されますdh_auto_install

dh_install複数のバイナリパッケージのソースパッケージを構築するために主に使用されます。debian/tmpまたは、以下のファイルをインポートして.コピーしますdebian/packageX

あなたの場合はをインストールしようとしているので、usr/include/*まったくそうする必要はないようですdh_install。インストールしたいファイルを見つけて待つだけですdebian/package/usr/include。ただし、以下にファイルをインストールする場合は、usr/includeライブラリをパッケージ化できます。この場合、ファイルを変更してdebian/control複数のバイナリパッケージ(ライブラリ用、開発ファイル用)を作成し、期待どおりにインストールしてdh_auto_install動作debian/tmpする必要があります。dh_install

また、見ることができますDpkg dh_install:debian / tmpディレクトリの代わりにビルドディレクトリからファイルをコピーしますか?

関連情報