查找为什么特定软件包安装在 dnf 依赖项大链中

查找为什么特定软件包安装在 dnf 依赖项大链中

我正在尝试进行“dnf 更新”并收到一堆错误,例如:

 Problem 2: cannot install both libinput-1.16.3-2.el8.x86_64 and libinput-1.16.3-1.el8.x86_64
  - package libinput-devel-1.16.3-1.el8.x86_64 requires libinput(x86-64) = 1.16.3-1.el8, but none of the providers can be installed
  - cannot install the best update candidate for package libinput-1.16.3-1.el8.x86_64
  - problem with installed package libinput-devel-1.16.3-1.el8.x86_64

我的假设是某些东西特别需要旧版本,因此 dnf 拒绝更新它。有没有办法让我准确找到需要的内容?

我在网上找到的所有内容都回答了相反的问题:给定一个包,它的依赖项是什么。我问“给定一个依赖项,找到它需要什么包”。

答案1

要找出哪些已安装的软件包需要给定的软件包,请使用

dnf repoquery --installed --whatrequires package

例如,

dnf repoquery --installed --whatrequires libinput

鉴于您问题中的输出,看来阻碍的包libinput就是libinput-devel它本身!

相关内容