Pacman 无法更新,因为它打破了与自身的依赖关系

Pacman 无法更新,因为它打破了与自身的依赖关系

我今天尝试更新我的 Arch 系统,pacman 正在尝试自我更新,但由于依赖关系中断而无法更新。错误如下:

    :: Synchronizing package databases...
 core                                                                133,9 KiB   542K/s 00:00 [#######################################################] 100%
 extra                                                              1644,6 KiB   392K/s 00:04 [#######################################################] 100%
 community                                                             4,9 MiB   485K/s 00:10 [#######################################################] 100%
 multilib                                                            169,3 KiB   576K/s 00:00 [#######################################################] 100%
:: Starting full system upgrade...
:: Replace ilmbase with extra/openexr? [Y/n] y
warning: liblastfm-qt5: local (1.1.0.r637-4) is newer than extra (1.0.9-4)
warning: python2-mutagen: local (1.42.0-3) is newer than antergos (1.38-2)
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: installing pacman (5.2.0-2) breaks dependency 'pacman<5.2' required by pamac

关于如何解决这个问题有什么建议吗?

答案1

这取决于pamac包裹的实际来源地。

  • 当第三方二进制存储库包(Antergos 和 Manjaro 都算作‘第三方’)对标准 Arch 包具有版本依赖性时:

    1. 取消更新并等待存储库获取新版本,并更新依赖项。(已经有支持 pacman 5.2 的 pamac v9.0.2,因此不会花很长时间。)
  • 当 AUR 软件包(你自己用 makepkg 编译的)或不再在二进制存储库中,对存储库包具有版本依赖性:

    1. 删除 AUR 包。
    2. 照常升级系统。
    3. 重新安装最新版本的 AUR 包,即使您已经缓存了构建的包,也要确保重建它。

答案2

我今天早上也遇到了同样的问题。(这并不是因为 pacman 本身有依赖性,而是因为有一个较旧版本的帕马克依赖旧版本的吃豆人

我通过以下方式解决了它:

  1. 卸载与 pamac 相关的软件包,以免它们阻碍升级 pacman
sudo pacman -R pamac-gtk-dev pamac-cli-dev pamac-common-dev
  1. 然后进行系统升级
sudo pacman -Syuu
  1. 然后重新安装这些 pamac 包(这次是最新版本)
sudo pacman -S pamac-gtk-dev pamac-cli-dev pamac-common-dev

相关内容