Неудовлетворенные зависимости - невозможно удалить пакет libgbm1

13

В этом случае меня libgbm1задерживают, сообщая мне следующее:

Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

Поскольку я внимательно прочитал, как разрешить неудовлетворенные зависимости после добавления PPA? Я попытался удалить сломанный пакет с, sudo apt-get remove libgbm1как предложено. Однако команда удаления выдала мне ту же ошибку.

sudo apt-get upgradeне обновляет этот пакет ( "...and 1 not upgraded."). И мне нужен этот, чтобы собрать некоторые другие пакеты, которые зависят от этого ( pkgProblemResoverпроблема снова). Кажется, я не могу ни вернуть версию, ни двигаться вперед.

Шаги, которые я когда-либо пробовал:

  • отключив некоторые репозитории ppa, software updatesа sudo apt-get updateзатем попытался исправить с помощью apt, что не сработало.
  • sudo apt-get -f installс and 1 not upgraded.
  • попытался установить пакеты, которые libgbm1зависят от. Но появляется все больше пакетов, которые быстро накапливаются до десятков из них, что кажется ненадежным, и они также сообщают о похожих ошибках.

Почему я не могу удалить пакет? Как это исправить?

knh170
источник

Ответы:

23

Проблема здесь состоит в том, чтобы заблокировать пакет создателя проблемы и выкинуть его. Тогда вы можете исправить несовместимые зависимости с sudo apt-get -f install.

Так что с осторожностью вы можете использовать: sudo dpkg --force-all -P libgbm1для принудительного удаления сломанного. Эта команда может повредить вашу систему, поэтому вы должны следить за ней. И попробуй исправить sudo apt-get -f install.

Если какие-либо пакеты также портятся, осторожно повторите вышеуказанные шаги. И каждый раз, когда вы удаляете сломанные пакеты, попробуйте их исправить. Я решил свою проблему в этом случае.

knh170
источник
Спасибо, два дня боли, прежде чем найти свой ответ! Однако я должен завершить ваш ответ, потому что мне нужно было бежать sudo apt --fix-broken installпозже, sudo dpkg --force-all -P libgbm1чтобы закончить установку
Жереми Пуе
4

Вместо того, чтобы спешить удалять поврежденные пакеты с помощью --force-allопции dpkg, сначала попробуйте удалить ее без этой опции, используя просто

dpkg -P package-name

В моем случае dpkgнапечатано, почему он не может удалить этот пакет: другой пакет зависел от него. После того, как я удалил иждивенца, сломанный пакет мог быть окончательно удален без каких-либо --force-anything.

Это может потребовать несколько рекурсивных удалений в случае, когда зависимый также нарушается, но конечным результатом должно быть исправление цепочки зависимостей, которую aptне удалось исправить, путем удалений.

Руслан
источник
1
Это было единственным решением , которое я мог бы найти , что работало , чтобы помочь мне с моей проблемой, не удалось установить из - за неудовлетворенные зависимости
WLH