如何获取未安装的RPM软件包的依赖关系列表?


73

apt-cache show <package> 还显示了它的依赖关系。

yum info <package> 没有显示依赖关系,但显然知道它们。

如何向yum请求指定软件包的依赖关系?

Answers:


85

百胜没有这种能力。请改用包装中的repoquery工具yum-utils

repoquery --requires <package>

或者也要查看需要哪些其他RPM软件包来满足依赖关系,请使用--resolve

repoquery --requires --resolve <package>

如果我有本地rpm文件,该怎么办?
Usman Ismail

也许从rpm包中提取控制文件并进行研究?
六。

13
如果已下载,则使用rpm -qp --requires <package file>
伊格纳西奥·巴斯克斯

如果使用RHN,则需要在调用repoquery的过程中添加--plugins。参见stackoverflow.com/questions/15433843/…–
nlu

什么是--resolve真正做到?repoquery --requires --resolve在已经安装的软件包上运行应该返回一个空列表权限,因为已经满足所有依赖关系了?当我在已经安装的软件包上试用它时,列出了一些文件,包括它本身(所有这些文件都已安装)。
haridsv

46

使用deplist命令,

yum deplist <package>

从yum的手册中:

产生所有依赖关系的列表,以及哪些包为给定的包提供那些依赖关系。

dnf更新

要使用dnf做同样的事情,我们可以做

dnf repoquery --requires <package>

如前所述man yum2dnf

dnf repoquery替代Yum deplist命令以找出软件包的依赖性,它需要使用repoquery插件。


5
不幸的是,这将返回每个依赖项的所有可能提供程序的列表,最终可能返回数百行或数千行,而不是简单的依赖项包名称列表。
2013年

13

如果您有本地RPM,则可以通过以下方式获取依赖项列表:

rpm -qpR mediawiki-1.4rc1-4.i586.rpm

2
也适用于URL。
Acumenus

如果您省略-q,则可以查询已配置的存储库:rpm -qR graphviz为我列出所有依赖项
natxo asenjo 2015年

2

如果您需要所需的软件包列表,请使用:

dnf repoquery-需要--resolve`

对于Firefox,通过运行:

sudo dnf repoquery --requires --resolve firefox

我有输出: Last metadata expiration check: 0:00:00 ago on Wed 13 Dec 2017 21:41:47 GMT. atk-0:2.26.1-1.fc27.x86_64 bash-0:4.4.12-12.fc27.x86_64 cairo-0:1.15.8-1.fc27.x86_64 cairo-gobject-0:1.15.8-1.fc27.x86_64 dbus-glib-0:0.108-4.fc27.x86_64 dbus-libs-1:1.12.0-1.fc27.x86_64 fontconfig-0:2.12.6-4.fc27.x86_64 freetype-0:2.8-6.fc27.x86_64 freetype-freeworld-0:2.8-4.fc27.x86_64 gdk-pixbuf2-0:2.36.11-1.fc27.x86_64 glib2-0:2.54.2-1.fc27.x86_64 glibc-0:2.26-16.fc27.i686 glibc-0:2.26-16.fc27.x86_64 gtk2-0:2.24.31-6.fc27.x86_64 gtk3-0:3.22.26-1.fc27.x86_64 hunspell-0:1.5.4-4.fc27.x86_64 libX11-0:1.6.5-4.fc27.x86_64 libX11-xcb-0:1.6.5-4.fc27.x86_64 libXcomposite-0:0.4.4-11.fc27.x86_64 libXdamage-0:1.1.4-11.fc27.x86_64 libXext-0:1.3.3-7.fc27.x86_64 libXfixes-0:5.0.3-4.fc27.x86_64 libXrender-0:0.9.10-4.fc27.x86_64 libXt-0:1.1.5-6.fc27.x86_64 libffi-0:3.1-14.fc27.x86_64 libgcc-0:7.2.1-2.fc27.x86_64 libjpeg-turbo-0:1.5.1-4.fc27.x86_64 libstdc++-0:7.2.1-2.fc27.x86_64 libvpx-0:1.6.1-4.fc27.x86_64 libxcb-0:1.12-5.fc27.x86_64 mozilla-filesystem-0:1.9-17.fc27.x86_64 nspr-0:4.17.0-1.fc27.i686 nspr-0:4.17.0-1.fc27.x86_64 nss-0:3.34.0-1.0.fc27.i686 nss-0:3.34.0-1.0.fc27.x86_64 nss-util-0:3.34.0-1.0.fc27.x86_64 p11-kit-trust-0:0.23.8-1.fc27.i686 p11-kit-trust-0:0.23.9-2.fc27.x86_64 pango-0:1.40.14-1.fc27.x86_64 startup-notification-0:0.12-14.fc27.x86_64 u2f-hidraw-policy-0:1.0.2-5.fc27.x86_64 zlib-0:1.2.11-4.fc27.x86_64


0

如果要通过yum 安装软件包及其依赖项,请尝试使用localinstall选项(如果要安装)。该localinstall安装程序包并发现任何依赖关系并下载:

$ yum -y localinstall <package>

我不是yum guru,但这对我来说效果很好,可以轻松安装包括依赖项的:-)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.