今日、私はArch Linuxデスクトップを更新しようとしましたが、Perlの依存関係の問題が発生しました。しかし、私はそれらの壊れたPerlパッケージを直接インストールしたことはありません。パックマンの問題だと思いました。 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の開発者が2、3年前に開発を停止したことです。多くの依存関係を利用しているため、維持が非常に困難です。
この問題を解決するには、Shutterをアンインストールして他の方法を選択するか、Shutterとそのすべての依存関係を削除してから、再度再インストールする必要があります。
シャッターを外すには、次のコマンドを実行します:
$ sudo pacman -R 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
今回は、ArchLinuxボックスを問題なく更新しました。システムを更新した後、Shutterの代替ツールを見つけるか、 Yoourtを使用して再インストールすることができます。 またはパッカー 。
yaourt -S shutter
または、
packer -S shutter
Shutterを再インストールすると、このperl依存関係の問題が再び発生する可能性があります。公式の解決策を待つことをお勧めします。この方法は、問題を一時的に解決します。または、シャッタースクリーンショットツールの代わりを見つけて、完全に削除します。
乾杯!