debuild -us -uc
開発中のパッケージビルドを実行すると、ファイルが見つからないことdh_install
に関する苦情が表示されます。単独で実行すると、同じエラーメッセージが表示されます。
$ dh_install
/home/felix/work/my_app/debian/install: 1: /home/felix/work/my_app/debian/install: execute.py: not found
/home/felix/work/my_app/debian/install: 2: /home/felix/work/my_app/debian/install: module1: not found
私は正しいディレクトリにあり、ファイルは明らかにそこにありますが:
$ pwd
/home/felix/work/my_app
$ ll
total 56K
[...]
-rwxrwxr-x 1 felix felix 20K Dez 6 10:35 execute.py
[...]
drwxrwxr-x 4 felix felix 4,0K Dez 1 19:10 module1
[...]
これは私のものですdebian/install
:
execute.py usr/lib/my-cool-app
module1 usr/lib/my-cool-app
私は何が間違っていましたか?これは1日前に機能し、それ以来このディレクトリで何も変更しませんでした。
$ git status
On branch debian_package
nothing to commit, working directory clean
追加情報:
$ dpkg -s debhelper | grep Version
Version: 9.20131227ubuntu1
$ cat debian/compat
9
答え1
答え2
ファイルdebian/install
が正しくありません。以下を使用する必要があります。
execute.py usr/lib/my-cool-app
module1 usr/lib/my-cool-app
注:usr/lib
前にスラッシュはありません。
これらのファイルはパッケージを準備するためにパッケージ「ルート」(AKA DESTDIR)に配置する必要があるため、相対パス(「DESTDIR」に相対)を使用する必要があります。ファイルが原因でビルドシステムがファイルをシステムに移動するため、/usr
一時的な場所にそのファイルが見つかりません。
答え3
WSLでも同じ問題に直面しました。本当の理由はdh_install
私にとってとても賢いからです))
しかし、私は次の解決策を見つけました。Debian メールアーカイブ したがって、結果は次のようになります。
Debian/インストール
#!/bin/bash
echo execute.py usr/lib/my-cool-app
echo module1 usr/lib/my-cool-app