今天,我尝试更新我的 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 依赖问题。 建议您等待官方解决方案。 这种方法将暂时解决问题。 或者,找到快门截图工具的替代品,并永久摆脱它。
干杯!
感谢您的光临!
帮助我们帮助您:
- 订阅我们的电子邮件通讯: 立即注册
- 支持 OSTechNix: 通过贝宝捐款
- 下载免费的电子书和视频: TradePub 上的 OSTechNix
- 联系我们: Facebook | Twitter | 谷歌加 | 领英 | RSS订阅
祝你有美好的一天!!