![在 .deb 包中创建 debian 版本依赖项](https://linux22.com/image/16560/%E5%9C%A8%20.deb%20%E5%8C%85%E4%B8%AD%E5%88%9B%E5%BB%BA%20debian%20%E7%89%88%E6%9C%AC%E4%BE%9D%E8%B5%96%E9%A1%B9.png)
是否可以在 .deb 包中为 debian 版本创建依赖项?
我想将一个包的两个版本放入同一个存储库中。一种适用于 debian 5,一种适用于 debian 6。版本号不同(deb 6 版本的数字更高),但我想避免在 deb 5 系统上意外安装 deb 6 版本。
答案1
我这里没有真正的 Debian 机器,但相同的机制应该可以工作。
jinx:1467 Z$ dpkg-query -S /etc/debian_version
base-files: /etc/debian_version
jinx:1468 Z$ dpkg-query -l base-files
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Description
+++-===================-===================-======================================================
ii base-files 5.0.0ubuntu20.10.04 Debian base system miscellaneous files
jinx:1469 Z$ _
因此,作为第一步,您应该能够依赖该base-files
包的特定版本。您可以将版本映射到版本号http://packages.debian.org,但在这种情况下,您已经拥有版本:它们与 Debian 版本相同(5 与 6;在此比较中忽略点版本)。
答案2
我认为您不能使 Debian 软件包依赖于特定的 Debian 版本。 Debian 6 软件包的解决方法是使其依赖于 Debian 5 上不可用的软件包版本。例如,使其依赖于libc6 > 2.7
(这是一个页面显示该软件包的哪些版本位于哪个 Debian 套件/发行版中)。