我正在尝试对 shell 脚本集合进行 debianize。构建本身非常简单,因为不需要构建二进制文件 - 将安装在目标系统上的每个文件都已经存在于源树中。
现在构建过程失败并出现一条我无法理解的错误消息:
dpkg-genbuildinfo: error: badly formed line in files list file, line 1
dpkg-buildpackage: error: dpkg-genbuildinfo subprocess returned exit status 25
debuild: fatal error at line 1182:
dpkg-buildpackage -us -uc -ui failed
错误消息中提到的文件列表文件是什么?它指的是该.install
文件吗?该文件如下所示:
src/main/shell/autorecover opt/autorecover
src/main/shell/autorecover.d/lib/* opt/autorecover.d/lib/
src/main/shell/autorecover.d/mods-available/* opt/autorecover.d/mods-available/
该debian
目录是从我之前构建的另一个(更复杂的)包中复制并剥离的,该包完成时没有出现此类错误iirc。
尽管如此,我最终还是得到了一个 deb 包,它似乎已经准备好了一切——脚本以及要安装的文件。 (这表明该.install
文件不可能完全错误,至少文件正在被收集。)
这里有什么问题吗?我需要修复什么,或者我应该从哪里开始寻找错误?
答案1
进一步研究表明,“文件列表文件”是一个自动生成的文件,名为debian/files
.正如我所怀疑的,该文件没有问题.install
。
看了一下debian/files
,第一行写着
autorecover_0.0.1_all.deb net # FIXME optional
该行应该具有以下形式
name_version_arch.deb section optional
该部分摘自debian/control
.在这里,我确实在部分名称之后添加了,# FIXME
因为我不确定要使用什么。
找到正确的部分(admin
听起来是一个不错的选择)并修复该值,然后构建包。