Когда я пытался установить Мерзавца на Ubuntu 16.04, я получаю ошибку. Команда я раньше устанавливал мерзавца:
sudo apt-get install git
Ошибка, с которой я встретился, была:
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
git : Depends: liberror-perl but it is not going to be installed
Depends: git-man (> 1:2.7.4) but it is not going to be installed
Depends: git-man (< 1:2.7.4-.) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or
specify a solution).
Даже при том, что я использовал предложенную команду (склонный - получают установку-f) устанавливать мерзавца, которого все еще сохраняет ошибка. Кто-либо, у кого есть идея решить эту проблему?
Иногда наши системы могут не обновляться для получения установки, поэтому мы можем обновить с помощью:
информация о пакете обновлений:
sudo apt-get update
Обновление пакетов в системе и исправляет поврежденные пакеты в процессе:
sudo apt-get -f dist-upgrade
только исправляет поврежденные пакеты:
sudo apt-get -f install
У меня была та же проблема с liberror-perl
при попытке установить git
. Другие ответы (sudo apt-get update && sudo apt-get dist-upgrade && apt-get -f install
) не работал на меня.
От вручную после цепочки проблем зависимости путем попытки установить каждый пакет непосредственно, похоже, что проблема с perl-base
:
$ sudo apt install liberror-perl
liberror-perl : Depends: perl but it is not going to be installed
$ sudo apt install perl
perl : Depends: perl-base (= 5.22.1-9) but 5.22.1-9ubuntu0.5 is to be installed
$ sudo apt install perl-base
perl-base is already the newest version (5.22.1-9ubuntu0.5).
Так perl
пакет зависит от устаревшей версии perl-основы. Я не уверен, как это было вызвано, но я подозреваю однажды, что более новая версия была доступна, возможно, из временного способного источника, который был позже удален в моей системе. Я решил проблему путем понижения perl-base
к версии perl
хочет:
$ sudo apt install -f perl-base=5.22.1-9
После этого мерзавец устанавливает правильно. На всякий случай была более новая доступная perl-базовая-версия, я пытался обновить ее, но вышеупомянутая версия была также последней версией:
$ sudo apt install perl-base=\*
perl-base is already the newest version (5.22.1-9).
Selected version '5.22.1-9' (Ubuntu:16.04/xenial [amd64]) for 'perl-base'
Насколько я знаю, что это не должно вызывать проблемы, но YMMV.