Поиск по сайту:

Устраните «Ошибка зависимости Perl 5.26: не удалось подготовить транзакцию (не удалось удовлетворить зависимости)» в Arch Linux

Сегодня я попытался обновить свой рабочий стол 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 или Packer.

yaourt -S shutter

Или,

packer -S shutter

Переустановка Shutter может снова вызвать эту проблему с зависимостью Perl. Рекомендую дождаться официального решения. Этот метод временно решит проблему. Или найдите альтернативу инструменту создания снимков экрана Shutter и избавьтесь от нее навсегда.

Ваше здоровье!

Статьи по данной тематике