我们正在尝试创建一个 deb 包,以安装和自动启动我们拥有的几个监控脚本。
这是规则文件:
#!/usr/bin/make -f
%:
dh $@ --with=systemd --with=python2
override_dh_installinit:
dh_systemd_enable -pmonitor --name=monitor monitor.service
dh_installinit -pmonitor--no-start --noscripts
dh_systemd_start -pmonitor
构建此包时,我从规则文件中收到以下错误:
dpkg-buildpackage -rfakeroot -us -uc -ui
dpkg-buildpackage: warning: using a gain-root-command while being root
dpkg-buildpackage: info: source package vm-perf-mon
dpkg-buildpackage: info: source version 2018.07.24.211328
dpkg-buildpackage: info: source distribution RELEASED
dpkg-buildpackage: info: source changed by root <root@034f0c4becfc>
dpkg-source --before-build debbuild
dpkg-buildpackage: info: host architecture amd64
fakeroot debian/rules clean
make:
: No such file or directory
make: *** No rule to make target '
'. Stop.
dpkg-buildpackage: error: fakeroot debian/rules clean subprocess returned exit status 2
debuild: fatal error at line 1152:
dpkg-buildpackage -rfakeroot -us -uc -ui failed
..................................................... ......................... 问题:
- 它声称没有制定目标的规则,但实际的目标名称是空白的。
- 规则文件没有目标,除了
%
作为包罗万象的默认目标和覆盖dh_installinit
目标。据我所知,%
应该捕获所有未定义的目标,并照顾它1。
由于 make 目标是空白的,我什至不确定从哪里开始。我想知道是否有人以前遇到过这种情况,或者知道这是什么或为什么会发生这种情况。
我确实读过这个,但在 OPs 案例中,它指定了一个没有规则的目标。