解决 Arch Linux 中的“Perl 5.26 Dependency error: failed to prepare transaction (could not meet dependencies)”

今天,我尝试更新我的 Arch Linux 桌面,结果出现了 Perl 依赖问题。 但是,我从来没有直接安装那些损坏的 Perl 包。 我认为这是由于pacman问题。 在 Arch Linux 论坛上搜索了一下,我发现它与 pacman 无关,而是 AUR。 这是我尝试更新 Arch 系统时收到的错误消息。

$ sudo pacman -Syu

样本输出:

:: Synchronizing package databases...
 core 124.1 KiB 131K/s 00:01 [----------------------] 100%
 extra 1667.6 KiB 221K/s 00:08 [----------------------] 100%
 community 3.8 MiB 375K/s 00:10 [----------------------] 100%
 multilib 176.6 KiB 189K/s 00:01 [----------------------] 100%
 archlinuxfr is up to date
 :: Starting full system upgrade...
 :: Replace wxgtk with extra/wxgtk2? [Y/n]
 resolving dependencies...
 looking for conflicting packages...
 error: failed to prepare transaction (could not satisfy dependencies)
 :: gnome-perl: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
 :: gnome-vfs-perl: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
 :: gnomecanvas-perl: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
 :: perl-gnome2-wnck: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
 :: perl-goo-canvas: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
 :: perl-gtk2-imageview: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
 :: perl-gtk2-unique: installing perl (5.26.0-1) breaks dependency 'perl<5.25'

以上包是Shutter截图工具的依赖包。 这个perl依赖问题的真正原因是Shutter的开发者在两三年前就停止了开发。 它使用了很多依赖项,这使得它很难维护。

要解决此问题,您应该卸载 Shutter,然后选择其他替代方案,或者只是删除 Shutter 及其所有依赖项,然后重新安装。

要删除快门,请运行:

$ sudo pacman -R shutter

删除 Shutter 后,您需要使用命令删除所有未使用的依赖项:

$ sudo pacman -Rns $(pacman -Qtdq)

或者,您只能使用如下所示删除有问题的依赖项。 执行此操作时请小心。 只要确保您只删除了正确的有问题的 perl 包。

$ sudo pacman -R perl-gtk2-unique perl-gtk2-imageview perl-goo-canvas perl-gnome2-wnck gnomecanvas-perl gnome-vfs-perl gnome-perl

这次我更新了我的 Arch Linux 盒子,没有任何问题。 更新系统后,您可以找到任何适用于 Shutter 的替代工具,也可以使用简单地重新安装它 约尔特 或者 打包机.

yaourt -S shutter

或者,

packer -S shutter

重新安装 Shutter 可能会再次带来这个 perl 依赖问题。 建议您等待官方解决方案。 这种方法将暂时解决问题。 或者,找到快门截图工具的替代品,并永久摆脱它。

干杯!

感谢您的光临!

帮助我们帮助您:

祝你有美好的一天!!