dpkg-debビルドが変更ログを無視/誤解釈する

dpkg-debビルドが変更ログを無視/誤解釈する

以下を使用して.debパッケージを作成しています。

dpkg-deb --build package

「パッケージ」ディレクトリには、変更ログを含むDEBIANという別のディレクトリが含まれていますが、生成されたパッケージにchangelog.Debian.gzはなく、lintianを使用してパッケージを確認すると、次のエラーが発生します。

E: msodbcsql: debian-changelog-file-missing
W: msodbcsql: unknown-control-file changelog

関係があるかどうかはわかりませんが、変更ログの権限は次のとおりです。

-rwxr-xr-x 1 maximk maximk  159 May 10 11:23 changelog

「変更ログ」が変更ログではなく、不明な制御ファイルと見なされるのはなぜですか?

答え1

バイナリパッケージでは、変更ログは制御ファイルではなく、パッケージペイロードの一部にすぎません。を使用してくださいdpkg-deb -b。つまり、usr/share/doc/${package}/changelog.Debian.gz変更ログを直接(または.../changelog.gz基本パッケージの場合)に入れる必要があることを意味します。

より明確に言えば、パッケージをディレクトリにビルドするので、package変更ログを入れるのではなく、以前と同じようにpackage/DEBIAN/changelogディレクトリに入れてpackage/usr/share/doc/package/changelog.Debian.gzビルドパッケージを使用しますdpkg-deb -b package

ソースパッケージでは、変更ログはdebian/changelogによって配置されコンパイルされますdh_installchangelogs

関連情報