“apt-cache rdepends --installed” 表示某个包已加载两次!

“apt-cache rdepends --installed” 表示某个包已加载两次!

Debian 延伸; 11.4.1 版本

$ apt-cache rdepends --installed libgstreamer-plugins-bad1.0-0
libgstreamer-plugins-bad1.0-0
Reverse Depends:
  libwebkit2gtk-4.0-37
  libwebkit2gtk-4.0-37

知道为什么这个libwebkit2gtk-4.0-37包裹在这里出现两次吗?我得到类似的结果资质

  --\ Packages which depend on libgstreamer-plugins-bad1.0-0 (12)
    --\ Depends (12)
p     gir1.2-gst-plugins-bad-1.0 1.10.4-1
p     gir1.2-gst-plugins-bad-1.0 1.10.4-1
p     gir1.2-gst-plugins-bad-1.0 1.10.4-1+deb9u
p     gir1.2-gst-plugins-bad-1.0 1.10.4-1+deb9u
p     gstreamer1.0-plugins-bad 1.10.4-1+deb9u2
p     gstreamer1.0-vaapi 1.10.4-1+b1
p     gstreamer1.0-vaapi 1.10.4-1+b1
p     libgstreamer-plugins-bad1.0-dev 1.10.4-1+
i A   libwebkit2gtk-4.0-37 2.18.6-1~deb9u1
i A   libwebkit2gtk-4.0-37 2.18.6-1~deb9u1
p     libwebkit2gtk-4.0-37-gtk2 2.18.6-1~deb9u1
p     libwebkit2gtk-4.0-37-gtk2 2.18.6-1~deb9u1

仅供参考,相当于资质命令行查询*不*表现出相同的行为:

$ aptitude search ~Dlibgstreamer-plugins-bad1.0-0
p   gir1.2-gst-plugins-bad-1.0                                             - GObject introspection data for the GStreamer libraries from the "bad" set        
p   gstreamer1.0-plugins-bad                                               - GStreamer plugins from the "bad" set                                             
p   gstreamer1.0-vaapi                                                     - VA-API plugins for GStreamer                                                     
p   libgstreamer-plugins-bad1.0-dev                                        - GStreamer development files for libraries from the "bad" set                     
i A libwebkit2gtk-4.0-37                                                   - Web content engine library for GTK+                                              
p   libwebkit2gtk-4.0-37-gtk2                                              - Web content engine library for GTK+ - GTK+2 plugin process

虽然我找到了一些参考文献易于错误(一个这里),我没有看到任何具体提及我所看到的内容。

关于导致出现重复包引用的原因有什么想法吗? 。

经过深思熟虑后更新爱德华多·特拉帕尼优秀答案(如下):

$ apt list -a libgstreamer-plugins-bad1.0-0
Listing... Done
libgstreamer-plugins-bad1.0-0/oldoldstable,now 1.10.4-1+deb9u2 amd64 [installed,automatic]
libgstreamer-plugins-bad1.0-0/oldoldstable 1.10.4-1 amd64

还:

$ apt rdepends --installed libgstreamer-plugins-bad1.0-0
libgstreamer-plugins-bad1.0-0
Reverse Depends:
  Depends: libwebkit2gtk-4.0-37 (<< 1.10.5)
  Depends: libwebkit2gtk-4.0-37 (>= 1.10.4)

由于我安装的版本libgstreamer-plugins-bad1.0-01.10.4-1+deb9u2apt rdepends --installed libgstreamer-plugins-bad1.0-0,它满足所述命令的输出中指定的两个版本条件。也许这就是原因资质报告所述包裹两次(如上所述)。

答案1

默认情况下这个命令

$ apt-cache rdepends --installed libgstreamer-plugins-bad1.0-0

将列出所有类型的依赖项。这意味着指定 aDepends和 的包Breaks将被列出两次。

您可以通过要求apt-cache仅列出--important依赖项来避免这种情况。手册页指出,这相当于:--no-pre-depends, --no-depends, --no-recommends, --no-suggests, --no-conflicts, --no-breaks, --no-replaces, --no-enhances。但是,如果该包对单个包有多个--important依赖项,则该包仍会多次列出。

$ apt-cache rdepends --installed --important libgstreamer-plugins-bad1.0-0

不过,我的建议是使用更简单且更适合人类使用的:

apt rdepends --installed libgstreamer-plugins-bad1.0-0

这将准确地告诉您每个包存在的原因,以及版本号等。

相关内容