apt-get, неудовлетворенные зависимости,… «но он не будет установлен»

28
$ apt-get install -f -o 'Dpkg::Options::=--force-confmiss --force-all --force-confnew --overwrite-conffiles' --reinstall at-spi2-core
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:
 kde-workspace-bin : Depends: qdbus but it is not going to be installed
 libqt4-dbus : Depends: qdbus (= 4:4.8.5+git192-g085f851+dfsg-2ubuntu4) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Я не совсем понимаю, "но это не будет установлено". Почему он не устанавливает его тогда?

apt-get -f install не помогает, ничего не делает

$ apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Альберт
источник
Вы могли бы попытаться выяснить , почему QDBus не устанавливается путем установки его самостоятельно: sudo apt-get install qdbus.
Jos
4
@Jos: я сделал это Теперь это работает. Однако это на самом деле не отвечает на мой вопрос или в чем проблема.
Альберт
Я предполагаю, что именно комбинация опций в вашей исходной команде apt-get помешала apt установить дополнительные зависимости.
Jos
Здесь было то, что я пропустил mainи имел только deb http://de.archive.ubuntu.com/ubuntu/ wily universe multiverseвдобавок к верному. Затем apt хотел установить пакет из юниверса, который зависел от версий, доступных только в wily / main, и поэтому не мог быть установлен.
Коппор
Попробуйте добавить отсутствующий пакет в команду установки:sudo apt-get install --reinstall at-spi2-core qdbus libqt4-dbus
antivirtel

Ответы:

21

Это сработало для меня.

$ sudo apt-get install <missing-package-1> <missing-package-2> ...

Я не знаю, почему это необходимо, но ручная установка проблемных пакетов сработала.

После установки первого раунда неудовлетворенных зависимостей всплыл еще один, но я повторил процесс, и он разобрался сам после двух циклов.

funroll
источник
9
Ничего себе, это действительно так просто ... Это заставляет меня задуматься, почему он вообще не установился?
Джексонкр
Это мне тоже помогло, но пришлось запускать дважды второй раз с обратным порядком имен пакетов. Не уверен, что был необходим обратный порядок.
PeterM
11

Поскольку этот вопрос также не помог, я нашел в этой ветке LinuxQuestions подсказку, которая помогла мне:

У вас есть смешанный /etc/apt/sources.list? Похоже, что вы пытаетесь установить один пакет из более нового репозитория, но у него нет доступа к репозиторию с более новыми зависимостями.

tueftl
источник
Файл со смешанными исходниками, или, может быть, с одним репозиторием, но в котором отсутствуют пакеты
golimar
У меня была та же проблема - моя sources.listбыла только mainхранилище и зависимость была где - то еще ( universe, restricted, ...). Сообщение об ошибке очень вводит в заблуждение.
WoJ
4

Я столкнулся с этой проблемой и решил ее, запустив:

sudo apt-get update
sudo apt-get upgrade

Затем, когда я запустил оригинальную команду «apt-get install», это удалось.

samt1903
источник
1

У меня также была такая же проблема при установке Guake ; это показали unmet dependenciesс Python. Даже попытка переустановить Python с помощью sudo apt-get install --reinstall pythonничего не сделал.

В заключение,

Шаг 1: Мне пришлось снова удалить и установить python, используя:

Примечание. Удаление pythonприводит к удалению многих других зависимостей, которые могут нарушить установленную Ubuntu, поэтому будьте осторожны при удаленииpython

sudo apt-get purge python

sudo apt-get install python

Шаг 2: Установите оригинальный пакет (в моем случае это был guake)

sudo apt-get install guake

Это установило все необходимые зависимости.

Попробуйте ту же самую процедуру с вашими пакетами, и она должна работать и для вас.

vinaykumar2491
источник
2
Удаление Python, даже временное, является плохой идеей, так как он, вероятно, удалит множество зависимых пакетов вместе с ним, и он необходим для запуска многих важных системных команд.
Byte Commander
Я знал об этой возможности, но я не смог решить свою проблему иначе .... много искал, но не мог найти рабочий путь .... на данный момент моя Ubuntu не сломалась ..... в ожидании это в будущем;) ...
vinaykumar2491