“提供:”在apt-cache showpkg的输出中意味着什么?

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源代码。

我想也许有人在这里做了,我不必。

provide字段告诉软件包pipe理员有关软件包的特定function,以防有其他可用的选项。

举个例子,很多软件包需要MTA,但是他们并不关心哪一个。 因此,它们对由meta提供的元包mail-transport-agent具有依赖性。 exim4-daemon-light或者nullmailer