man apt-cache
对此有这样的看法:
showpkg
显示命令行上列出的软件包的信息。其余参数是软件包名称。列出每个软件包的可用版本和反向依赖关系,以及每个版本的正向依赖关系。正向(正常)依赖关系是所讨论软件包所依赖的软件包;反向依赖关系是依赖于所讨论软件包的软件包。因此,软件包必须满足正向依赖关系,但反向依赖关系则不必满足。例如,apt-cache showpkg libreadline2
将产生类似于以下内容的输出:
Package: libreadline2
Versions: 2.1-12(/var/state/apt/lists/foo_Packages),
Reverse Depends:
libreadlineg2,libreadline2
libreadline2-altdev,libreadline2
Dependencies:
2.1-12 - libc5 (2 5.4.0-0) ncurses3.0 (0 (null))
Provides:
2.1-12 -
Reverse Provides:
因此可以看出,libreadline2 版本 2.1-12 依赖于 libc5 和 ncurses3.0,必须安装这两个软件才能使 libreadline2 正常工作。反过来,libreadlineg2 和 libreadline2-altdev 也依赖于 libreadline2。如果安装了 libreadline2,则还必须安装 libc5 和 ncurses3.0(以及 ldso);libreadlineg2 和 libreadline2-altdev 则无需安装。有关输出其余部分的具体含义,最好查阅 apt 源代码。
我想也许这里有人已经这样做了,而我不需要这么做。
答案1
provide
如果有可用的替代方案,该字段会告知包管理器有关包的特定功能。
例如,许多软件包需要 MTA,但它们并不关心具体是哪一个。因此,它们依赖于由 ie.或mail-transport-agent
提供的meta-package 。exim4-daemon-light
nullmailer