私たちは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ターゲットは空白なので、どこから始めればよいかさえわかりません。誰もこれに直面したことがあるのか、これが何であるのか、なぜこれが起こっているのか考えているのだろうか。
this を読みましたが、OPの場合、ルールのないターゲットを指定しました。
出力を見ると、「そのようなファイルやディレクトリはありません」と「ターゲットを作成するルールがありません」の両方が改行文字のように見えます。最初の行の最後に改行を追加することで、同様のエラー出力を複製することができました。
Debian/rulesファイルに異常な文字がないことを確認する必要があります。