0

打包时遇到以下错误

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 创建的,为什么又要求将它包含在其他目录中?

4

1 回答 1

1

在 debian 中打包时,在您的项目目录中有一个名为debian的目录,我们在其中保存有关如何打包软件的说明以及与其他软件包的关系等文件。我们可以将其称为 package control files。其中,有一个叫做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-source构建的源包中.

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

编辑:

*错字:删除(非远程)

*一些说明

于 2013-09-17T18:37:07.857 回答