Debian打包Control File中为python-tox指定版本的语法咨询
Debian控制文件中指定Build-Depends版本的正确语法
你猜的方向完全正确!在Debian的debian/control文件里,给依赖添加版本约束的核心语法就是用括号包裹约束条件,不过关于版本匹配符号有几个细节可以明确下:
- 严格匹配版本:可以用
=或者==,两者在Debian的依赖解析逻辑中效果完全一致,不过社区传统上更常用简洁的=写法 - 其他常用约束符号:
>=:要求依赖版本大于等于指定值<=:要求依赖版本小于等于指定值<<:要求依赖版本小于指定值>>:要求依赖版本大于指定值
针对你的需求,修改后的Build-Depends行推荐写成这样:
Build-Depends: debhelper (>= 8.0.0), devscripts, dos2unix, dh-apparmor, config-package-dev (>= 5.0), python-yaml, python-tox (= 3.14.0)
如果你坚持用==也完全没问题,dpkg会正确识别,比如:
Build-Depends: debhelper (>= 8.0.0), devscripts, dos2unix, dh-apparmor, config-package-dev (>= 5.0), python-yaml, python-tox (== 3.14.0)
完整的修改后控制文件示例
Source: tps-config Section: cyber Priority: optional Maintainer: admin <admin@tps.cyber.local> Build-Depends: debhelper (>= 8.0.0), devscripts, dos2unix, dh-apparmor, config-package-dev (>= 5.0), python-yaml, python-tox (= 3.14.0) Standards-Version: 3.9.4
⚠️ 小提醒:版本号必须和软件包在Debian仓库中的完整版本字符串完全匹配,包括可能的Debian修订后缀(比如如果仓库里的python-tox版本是3.14.0-1,你就需要写= 3.14.0-1)。
内容的提问来源于stack exchange,提问作者Neekoy
相关产品推荐
相关产品推荐

