debian包装中的changelog.Debian.gz文件是什么?

时间:2013-08-26 12:13:32

标签: c++ ubuntu debian packaging

包装时我遇到了以下错误

dh_builddeb
dpkg-deb: building package `remotedevicecontroller' in `../remotedevicecontroller_1.0-1_i386.deb'.
 dpkg-source -b remotedevicecontroller-1.0
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: error: unwanted binary file: debian/remotedevicecontroller/usr/share/doc/remotedevicecontroller/changelog.Debian.gz
dpkg-source: error: detected 1 unwanted binary file (add it in debian/source/include-binaries to allow its inclusion).
dpkg-buildpackage: error: dpkg-source -b remotedevicecontroller-1.0 gave error exit status 29

为什么文件是由debian-helper创建的,为什么它又要求将它包含在其他目录中呢?

1 个答案:

答案 0 :(得分:0)

在debian中打包时,在项目目录中有一个名为 debian 的目录,这是我们保存文件的方法,包括如何打包软件的说明,以及与其他软件包的关系等。我们可以将其称为包装控制文件。其中,有一个名为 changelog ,如下所示:

mypackage (version-revision) unstable; urgency=low

  * Changelog messages

 -- Your Name <your@email.com>  Mon, 13 Aug 2012 14:09:01 -0300
 (...)

包装软件(dpkg-buildpackage)使用此文件来了解包的名称和版本。它还有mantainer,changelogs等信息。在您构建软件包并安装它之后,此文件将位于 /usr/share/doc/mypackage/changelog.Debian.gz 压缩后的文件中gzip格式。您可以通过解压缩或使用 zcat 命令来检查其内容。

现在,你遇到的问题是这个文件一旦被压缩,就会被认为是二进制文件,只有在debian / source / include-binaries中添加的二进制文件才能被包含在源代码包中。 dpkg的源

要解决您的问题,您可能希望从源包中删除 changelog.Debian.gz 文件,因为它将被替换为debian文件夹中的changelog文件。如果您正在“重新打包”某些内容,并且您认为该文件中可能存在您要保留的更新的更改日志信息,则应将其与您在debian / changelog中的信息进行比较。

编辑:

*错字:删除(不是远程)

*一些澄清