Невиконані залежності - не можна видалити пакет libgbm1


13

У цьому випадку мене libgbm1тримають, передаючи мені повідомлення, як:

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

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

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від яких залежить. Але більше пакетів виходить вперед і швидко накопичує їх до десятків, що вдається впоратися, і вони також повідомили про подібні помилки.

Чому я не міг видалити пакунок? Як це виправити?

Відповіді:


24

Проблема тут полягає в тому, щоб зафіксувати пакет виробника несправностей і вигнати його. Тоді ви можете виправити непослідовні залежності за допомогою sudo apt-get -f install.

Тож з обережністю ви можете використовувати: sudo dpkg --force-all -P libgbm1щоб примусити видалити пошкоджене. Ця команда може зашкодити вашій системі, тому вам слід її переглянути. І спробувати виправити: sudo apt-get -f install.

Якщо будь-які пакети також зіпсуються, обережно повторіть вищезазначені дії. І кожен раз, коли ви виймали зламані пакети, намагайтеся їх виправити. Я вирішив свою проблему в цьому випадку.


Дякую, два дні болю, перш ніж знайти свою відповідь! Однак я маю завершити вашу відповідь, тому що мені довелося бігти sudo apt --fix-broken installпісля того, sudo dpkg --force-all -P libgbm1як закінчити встановлення
Jérémy Pouyet

4

Замість того, щоб поспішати видаляти ваші зламані пакети, скориставшись --force-allопцією dpkg, спочатку спробуйте вийняти її без цієї опції, використовуючи просто

dpkg -P package-name

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

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


1
Це єдине рішення, яке я міг знайти, який працював, щоб допомогти мені зі своєю проблемою, не в змозі встановити через невиконані залежності
wlh
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.