我想與Spotify的dh-virtualenv debian包助手建立一個deb包。如何用dh-virtualenv構建Debian軟件包?規則文件不工作與fakeroot
錯誤消息我得到: 在運行dpkg-buildpackage -us -uc
:
(venv) $ dpkg-buildpackage -us -uc
dpkg-buildpackage: source package ese-xlr8r
dpkg-buildpackage: source version 1.4.7
dpkg-buildpackage: source distribution UNRELEASED
dpkg-buildpackage: source changed by Special Characters <[email protected]>
dpkg-buildpackage: host architecture amd64
dpkg-source --before-build active
fakeroot debian/rules clean
: No such file or directory
'. Stop. No rule to make target `
dpkg-buildpackage: error: fakeroot debian/rules clean gave error exit status 2
我不知道爲什麼它不會找到規則文件。我可以毫不fakeroot的手動運行該文件,它的工作原理(或至少它傳遞的是初始誤差):
: command not found
: no such job
dh_testdir
dh_auto_clean
pyversions: missing X(S)-Python-Version in control file, fall back to debian/pyversions
pyversions: missing debian/pyversions file, fall back to supported versions
/home/echostar/projects/XLR8R/active/venv/local/lib/python2.7/site-packages/setuptools/dist.py:364: UserWarning: Normalizing '1.4.10
' to '1.4.10'
normalized_version,
running clean
'build/lib.linux-x86_64-2.7' does not exist -- can't clean it
'build/bdist.linux-x86_64' does not exist -- can't clean it
'build/scripts-2.7' does not exist -- can't clean it
dh_clean
正如你沒有看到「沒有這樣的文件或目錄」錯誤。我可以重現錯誤與fakeroot的:
(venv) $ fakeroot debian/rules
: No such file or directory
'. Stop. No rule to make target `
這裏是我的規則文件:
(venv) $ cat debian/rules
#!/usr/bin/make -f
%:
dh [email protected] --with python-virtualenv
我缺少的東西?
注意:'venv'是我的virtualenv的名稱,並且處於活動狀態。
UPDATE 2016年8月23日 我複製我的代碼到另一個虛擬機在數據中心我們與年齡稍大的Ubuntu和重新安裝了一切,並運行buildpackage命令。這一次它使得它更進一步,但最後還是類似的錯誤。我不會發布整體buildpackage日誌,但這裏的最終要點:
New python executable in debian/ese-xlr8r/usr/share/python/ese-xlr8r/bin/python
Installing setuptools, pip...done.
Downloading/unpacking behave==1.2.5 (from -r ./requirements.txt (line 1))
Cannot fetch index base URL https://pypi.python.org/simple/
Could not find any downloads that satisfy the requirement behave==1.2.5 (from -r ./requirements.txt (line 1))
Cleaning up...
No distributions at all found for behave==1.2.5 (from -r ./requirements.txt (line 1))
Storing debug log for failure in /home/echostar/.pip/pip.log
Traceback (most recent call last):
File "/usr/bin/dh_virtualenv", line 106, in <module>
sys.exit(main() or 0)
File "/usr/bin/dh_virtualenv", line 86, in main
deploy.install_dependencies()
File "/usr/lib/python2.7/dist-packages/dh_virtualenv/deployment.py", line 172, in install_dependencies
subprocess.check_call(self.pip('-r', requirements_path))
File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/home/echostar/dan/xlr8r/debian/ese-xlr8r/usr/share/python/ese-xlr8r/bin/python', '/home/echostar/dan/xlr8r/debian/ese-xlr8r/usr/share/python/ese-xlr8r/bin/pip', 'install', '--log=/tmp/tmpNybuqh', '-r', './requirements.txt']' returned non-zero exit status 1
make: *** [binary] Error 1
dpkg-buildpackage: error: debian/rules binary gave error exit status 2
我不知道它爲什麼叫PIP與像蟒蛇前綴: 蟒蛇PIP安裝-r ./requirements.txt
Pip不是像這樣調用的python文件。 dh-virtualenv中可能存在的錯誤?
我的fules文件包含空格,但我用一個選項卡替換它,但錯誤仍然存在,所以它與此無關。在嘗試從github穩定版本編譯dh-virtualenv本身的更新版本時,我實際上遇到了同樣的錯誤。所以這讓我有信心,這與我的系統有關。我正在運行Ubuntu 14 jessie – dlite922
爲什麼這個標記爲python和flask?您的帖子中沒有Python或Flask代碼。 –
我試圖debianize燒瓶應用程序。也許我不是唯一一個這樣做的人,那些有debianized python flask應用的人可以說點什麼。 – dlite922