【发布时间】:2015-09-22 08:59:38
【问题描述】:
我收到来自 lintian 的警告和一个错误:
W: openrobertalab: init.d-script-not-marked-as-conffile etc/init.d/openrobertalab
E: openrobertalab: init.d-script-not-included-in-package etc/init.d/openrobertalab
我不明白的是我的包中没有etc/init.d/openrobertalab这样的文件:
dpkg --contents openrobertalab_1.3.0-1_amd64.deb | grep etc
drwxr-xr-x root/root 0 2015-09-22 10:53 ./etc/
drwxr-xr-x root/root 0 2015-09-22 10:53 ./etc/dbus-1/
drwxr-xr-x root/root 0 2015-09-22 10:53 ./etc/dbus-1/system.d/
-rw-r--r-- root/root 489 2015-09-22 10:53 ./etc/dbus-1/system.d/openrobertalab.conf
如果我遵循 lintiants 的建议并创建一个 debian/openrobertalab.conffiles 列出此不存在的文件,则包构建失败:
dpkg-deb: error: conffile `etc/init.d/openrobertalab' does not appear in package
dh_builddeb: dpkg-deb --build debian/openrobertalab .. returned exit code 2
make: *** [binary] Error 1
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2
有什么想法吗?
【问题讨论】:
-
我猜它存在于构建的
etc目录中,但不确定哪个精确路径以及构建过程的哪个阶段。我猜你需要增加debian/rules才能将它实际包含在包中。 -
我搜索了包的临时目录,根本没有etc/init.d:/
-
为了对问题进行适当的分析,我们需要查看更多代码;例如
debian/的内容(或打包仓库的链接)