严格低于版本的 Debian 控制文件会产生难以理解的错误消息

Debian control files for version strictly less than producing hard-to understand error message

我正在写一个依赖 python3-django 的 debian 包。

控制文件包含行:

Depends: python3-django (>= 1.11), python3-django (<< 2)

当我尝试安装软件包时,我收到的错误消息是:

mypackagename: Depends: python3-django (< 2) but 1:1.11.28-1~deb10u1 is to be installed

在我看来,为 Django 提供的版本号应该解析为较低的版本号,但由于某些原因不是。如果有人可以告诉我我在这里遗漏了什么错误或陷阱,我将不胜感激。

您尝试安装的 python3-django 版本 不是 1.11.28-1~deb10u1(确实属于 [1.11..<< 2) 范围), 但 1:1.11.28-1~deb10u1.

:之前的数字称为epoch,它优先于它后面的任何数字(即:它是一个比[=25具有更高优先级的数字) =]主要版本号)。默认纪元是 0,您的版本取决于使用此默认纪元。

所以检查真的是1:1.11.28-1~deb10u1是否是>= 0:1.11(哪个是真的)<< 0:2哪个是假的,哪个是什么错误告诉你。