在stdeb bdist_deb调用时覆盖或禁用$ {python:Depends}

时间:2013-05-06 18:04:55

标签: python debian packaging setup.py debhelper

我正在尝试使用stdeb打包我的Python软件:

python setup.py --command-packages=stdeb.command bdist_deb

工作正常。

不幸的是,stdeb将变量${python:Depends}添加到 debian / control 文件中。此占位符由dh_python2的{​​{1}}自动处理,并被包含多个Python版本的字符串替换,例如:debhelper

如何摆脱这些自动添加的Python版本或如何覆盖"python2.7, python (>= 2.7.1-0ubuntu2), python (<< 2.8)"

注意:实际问题是${python:Depends}依赖关系。目标系统为包python提供版本python2.7,但2.7.3仍在python

2 个答案:

答案 0 :(得分:1)

您实际需要做的是在X-Python-Version: >= 2.6中向源包添加debian/control之类的内容,并将python-allpython-all-dev添加到Build-Depends。如果您正在构建python-all取决于python2.6python2.7的合适套件,这将有效。最好使用pbuilder来构建目标系统,特别是如果它与您的开发环境不同。 请不要覆盖${python:Depends} - 这是错误的,不会有任何好处。

答案 1 :(得分:0)

您可以通过XS-Python-Version选项强制 stdeb python依赖项。例如,通过创建stdeb.cfg文件:

[DEFAULT]
XS-Python-Version: 2.6

设置此选项的其他方法可能是[sdist_dsc]部分中的setupg.cfg,也可能是命令行(sdist_desc --xs-python-version 2.6 bdist_deb),但实际上并不适用于我。