Как разрешить неудовлетворенные зависимости после добавления PPA?

471

Иногда, когда я устанавливаю файлы, я получаю сообщение об ошибке:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 package1 : Depends: package2 (>= 1.8) but 1.7.5-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.

Как я могу это решить?

    
задан jrg 21.05.2012 в 16:17
источник

14 ответов

503

APT - это система управления пакетами для Debian и других дистрибутивов Linux на ее основе, таких как Ubuntu. По большей части APT прост в использовании для установки, удаления и обновления пакетов. В редких случаях, часто при смешивании сторонних зависимостей существует вероятность того, что apt-get может закончиться тем, что вы сообщите, что установка пакета не может быть завершена.

Решение:

Всегда полезно создавать резервные копии файлов конфигурации, таких как /etc/apt/sources.list , поэтому при необходимости вы можете отменить изменения.

  • Если error показывает что-то вроде этого:

    <some-package>: Depends: <other-package> (= version) but this-version is to be installed

    Затем убедитесь, что репозитории restricted и universe включены. Нажмите Alt + F2 , введите software-properties-gtk и нажмите Enter .

    В закладке Ubuntu Software включите все репозитории.

  • Одной из возможных причин неудовлетворенных зависимостей может быть поврежденная база данных пакетов и / или некоторые пакеты были установлены неправильно. Чтобы устранить эту проблему, нажмите Alt + Ctrl + T , чтобы открыть терминал и попытаться выполнить одну из следующих команд:

    sudo apt-get clean

    или,

    sudo apt-get autoclean

    apt-get clean очищает локальный репозиторий файлов файлов (файлов .deb). Он удаляет все, кроме файла блокировки, из / var / cache / apt / archives / и / var / cache / apt / archives / partial /. apt-get autoclean очищает локальный репозиторий полученных файлов пакетов, но в отличие от apt-get clean , он удаляет только файлы пакетов, которые больше не могут быть загружены и в основном бесполезны.

  • Один из самых простых исправлений для решения проблем с зависимостями:

    sudo apt-get -f install

    Здесь -f означает «исправление неисправности». Apt попытается исправить поврежденные зависимости. Если вы вручную установили пакет с неудовлетворенными зависимостями, apt-get будет устанавливать эти зависимости, если это возможно, в противном случае он может просто удалить пакет, который вы установили, чтобы решить проблему.

    Затем запустите:

    sudo dpkg --configure -a

    Затем запустите это снова:

    sudo apt-get -f install

    Если выход:

    0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

    Это означает, что он не удался.

  • Следующее решение - запустить:

    sudo apt-get -u dist-upgrade

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

    sudo apt-get -o Debug::pkgProblemResolver=yes dist-upgrade

    Если он не может исправить конфликты, он выйдет с:

    0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.

    Удалите удерживаемые пакеты один за другим, каждый раз запуская dist-upgrade , пока не будет больше пакетов. Затем переустановите все необходимые пакеты. Обязательно используйте параметр --dry-run , чтобы вы были полностью информированы о последствиях:

    sudo apt-get remove --dry-run package-name

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

Наконец, если все остальное не удастся, вы можете попытаться удовлетворить зависимости самостоятельно, либо путем поиска и установки необходимых пакетов, либо путем установки их из источника, а затем создания « deb " для них.

Отключить / удалить / очистить PPAs:

PPAs (Personal Package Archive) - это хранилища, размещенные на Launchpad . Вы можете использовать PPA для установки или обновления пакетов, которые недоступны в официальных репозиториях Ubuntu.

Одной из наиболее распространенных причин неудовлетворенных зависимостей являются PPA, особенно когда используется для обновления существующего пакета в репозиториях Ubuntu. Чтобы решить проблему, у вас есть три варианта: отключить, очистить (вернуться к исходному пакету в репозиториях Ubuntu) или удалить PPA.

  • Отключить:

    Отключение PPA означает отсутствие обновлений для пакетов, установленных из этого PPA. Чтобы отключить PPA: Открыть Software Center > Edit > Software Sources Или,

    Нажмите Alt + F2 и запустите software-properties-gtk .

    Перейдите на вкладку Other Software , вы увидите, что у каждого PPA есть две строки: одна для скомпилированных пакетов и одна для источника, Uncheck обе строки для отключения PPA. Здесь вы также можете добавить и удалить PPA.

  • Purge:

    Очистка PPA означает сокращение пакетов в выбранном PPA до версии в официальных репозиториях Ubuntu и отключение этого PPA. PPA Purge делает именно это. Чтобы установить PPA Purge, выполните следующую команду:

    sudo apt-get install ppa-purge

Но, учитывая, что вопрос apt нарушен, приведенная выше команда завершится неудачно. Поэтому используйте эту команду

mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb

Чтобы использовать PPA Purge:

sudo ppa-purge ppa:someppa/ppa

Если по какой-либо причине сбой команды «ppa-purge», вы не сможете запустить «ppa-purge» еще раз, если вы не включите PPA (чтобы включить PPA, выполните те же действия, что и отключение PPA и Check обе линии конкретного PPA, чтобы включить его).

Примечание: PPA Purge не удаляет PPA ( может быть в будущем ), поэтому вам придется вручную удалить PPA.

  • Удалить

    Если пакет, установленный из PPA, не существует в официальных репозиториях Ubuntu, то использование PPA Purge не рекомендуется, потому что нет ничего, что можно было бы понизить, а PPA Purge также не удалит его. Чтобы удалить PPA и установленные пакеты, выполните следующие команды: (Игнорируйте первую команду, если вы не хотите удалять установленные пакеты)

    sudo apt-get autoremove --purge package-name
    sudo add-apt-repository --remove ppa:someppa/ppa
    sudo apt-get autoclean
    

В качестве альтернативы вы можете использовать Y PPA Manager для отключения / удаления / очистки PPA (подробности в конце ответа).

Профилактические меры:

Итак, как мы можем избежать этого в первую очередь?

  • Удерживайте Ubuntu в актуальном состоянии. Ubuntu автоматически уведомляет о доступности обновлений, вы также можете проверить доступные обновления, нажав Session Indicator на панели Unity:

    Или, нажмите Alt + Ctrl + T , чтобы открыть терминал и выполнить следующие команды:

    sudo apt-get update
    sudo apt-get upgrade

    Обновление: синхронизирует список доступных пакетов с серверами в исходных репозиториях. Обновление: загрузки и amp; устанавливает новые версии установленных пакетов.

  • Если вы решили добавить другие репозитории в sources.list, убедитесь, что репозиторий предназначен для работы (и, как известно, для работы) с Ubuntu. Хранилища, которые не предназначены для работы с вашей версией Ubuntu, могут привести к несогласованности в вашей системе и могут заставить вас переустановить. Кроме того, убедитесь, что вам действительно нужно добавить внешние репозитории, поскольку программный пакет (ы), который вы ищете, уже может быть внесен в официальные репозитории! Источник
  • Удалите дубликаты PPA. Y PPA Manager (руководство по установке в конце ответа) может легко сканировать и удалять дубликаты PPA.

    • Нажмите Alt + F2 и запустите y-ppa-manager , чтобы открыть Y Менеджер PPA.
    • После открытия дважды щелкните или нажмите Enter на Advanced .
    • В появившемся окне выберите Scan and remove duplicate PPAs и нажмите «ОК».

Получение справки:

При обращении за помощью в Askubuntu или в любом другом справочном форуме вы должны включить в свой вопрос вывод следующих команд:

  • sudo apt-get install package-name
    Вывод фактической ошибки.
  • cat /etc/apt/sources.list
    Это покажет ваш sources.list
  • cat /etc/apt/sources.list.d/*
    Это покажет список PPA (если есть).

Дополнительные источники:

Y PPA Manager :  Y PPA Manager - это универсальный магазин для всех ваших потребностей в PPA.

Вот некоторые из его возможностей:

  • пакеты поиска во всех PPA для Launchpad.
  • список и загрузка пакетов в PPA
  • добавить / удалить / очистить PPA
  • резервное копирование и восстановление источников PPA
  • удалить дублирующие источники PPA

Чтобы установить Y PPA Manager , откройте терминал, нажав Alt + Ctrl + T и выполните следующие команды:

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager

Учитывая вопрос, apt сломан, поэтому используйте эти команды вместо

sudo su

и

32 бит:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb

64 бит:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb
    
ответ дан Basharat Sialvi 27.05.2012 в 09:26
источник
81
  

Примечание. Все команды, которые необходимо запустить, должны запускаться в терминале, который может быть открыт либо с помощью Ctrl + Alt + T или поиск терминала в тире.

Разве это действительно нарушено?

Попробуйте выполнить следующую команду и попробуйте переустановить программное обеспечение, которое вы пытались установить

sudo apt-get update

Шаги предварительного исполнения

Резервное копирование

Создайте резервную копию следующих файлов:

  • /etc/apt/sources.list
  • /var/lib/dpkg/status

Для этого используйте следующие команды

sudo cp /etc/apt/sources.list /etc/apt/sources.list.original

и

sudo cp /var/lib/dpkg/status /var/lib/dpkg/status.original

Очистка кэша apt-cache

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

Теперь, чтобы очистить его, у вас есть две опции

sudo apt-get clean 

Это приведет к удалению всех кэшированных пакетов, принадлежащих папке /var/cache/apt/archives/ и /var/cache/apt/archives/partial , за исключением файлов .lock. Рекомендуется

sudo apt-get autoclean

Это сканирует папки /var/cache/apt/archives/ и /var/cache/apt/archives/partial и проверяет, остается ли пакет в репозиториях и удаляет те, которые не являются

Фиксирование зависимостей

Использование apt's fix-broken mode

sudo apt-get -f install

Это заставит apt сканировать недостающие зависимости и исправить их из репозиториев

Если на выходе указано, что ничего нового не было установлено или обновлено, оно не сработало.

Проверка наличия всех необходимых источников

Введите gksu software-properties-gtk , и вы получите это окно

Убедитесь, что все источники включены.

затем перейдите на вкладку «Прочее» и проверьте, имеются ли необходимые PPA для установленного программного обеспечения и включены ли они. Кроме того, попробуйте отключить некоторые PPA, которые могут иметь сломанные пакеты

, запустите sudo apt-get update

Попробуйте установить программное обеспечение сейчас

Выбор лучшего сервера для загрузки из

Введите gksu software-properties-gtk , и вы получите это окно

Нажмите «Загрузить из раскрывающегося списка» и выберите другой

Нажмите «Выбрать лучший сервер»

Выполнить sudo apt-get update

Попробуйте установить программное обеспечение

, попробуйте использовать sudo apt-get install -f

Очистка PPA

Это инструмент, используемый для очистки сломанных / нежелательных ppa и их приложений вместе с ним

Чтобы установить его, запустите

sudo apt-get install ppa-purge

Но, учитывая вопрос apt , будет нарушен, поэтому приведенная выше команда завершится с ошибкой. Поэтому используйте эту команду

mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb

Теперь используйте ppa purge

sudo ppa-purge ppa:someppa/ppa  

Менеджер Y-PPA

Y-PPA Manager - это приложение gui, которое помогает вам управлять PPA и различными проблемами, связанными с ним.

Чтобы установить его

sudo add-apt-repository ppa:webupd8team/y-ppa-manager

и

sudo apt-get update

и

sudo apt-get install y-ppa-manager

Учитывая вопрос, apt сломано так, используйте эту команду вместо

sudo su

и

32 бит:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb

64 бит:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb

Теперь введите y-ppa-manager

Вам будет представлено это окно

Дважды щелкните по расширенному, и вы получите это окно

Выполните следующие задачи, выделенные черным цветом

Предотвращение лучше, чем лечение

Лучше предупредить, чем искать этот вопрос на AskUbuntu: D

Итак, вот рекомендации по обеспечению безопасности

Сохраняйте актуальность вашей системы

всегда запускайте следующую команду

sudo apt-get update&&sudo apt-get upgrade

или вы всегда можете использовать Update Manager с помощью этой команды

gksu update-manager

Использование только доверенных PPA

Используйте только PPA, предназначенные для использования в Ubuntu, используйте PPA только с надежными источниками. Infact, пакет уже может быть в репозиториях ubuntu

Резервное копирование, когда все будет хорошо, и восстановит его позже

Для этого вам нужен Y-PPA-Manager. Шаги по его установке приведены выше.

Запустите эту команду, чтобы открыть Y-PPA-Manager

y-ppa-manager

Вам будет представлено это окно

Дважды щелкните по расширенному, и вы получите это окно

Запустите это:

Вам будет предложено сохранить файл tar.gz с диалоговым окном, аналогичным приведенному ниже. Сохраните его в другом разделе или в безопасном месте.

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

Вам будет предложено восстановить предыдущую резервную копию, которую вы сохранили ранее, с диалогом, аналогичным диалоговому окну

Все в одном скрипте

Скоро

Все еще не работает?

Ошибки зависимостей пакетов не всегда являются общими и зависят от устанавливаемого пакета.

Если выполнить все шаги, указанные для исправления ошибки, для вас не работает, вы всегда можете запросить Ask Ubuntu

Вот несколько команд, которые вам нужно отправить вывод

sudo apt-get install packagename

и

cat /etc/apt/sources.list

и

cat /etc/apt/sources.list.d/*

(Благодаря Башарат Сиаль )

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

    
ответ дан Amith KK 21.05.2012 в 16:30
33

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

Я настоятельно рекомендую aptitude любому, кто использует систему на основе .deb, такую ​​как Ubuntu. Его древовидная структура позволяет вам легко просматривать зависимости, включая рекомендуемые и предлагаемые пакеты, а также визуализировать конфликты и неудовлетворенные зависимости. Это бесценный инструмент, когда apt-get не предлагает простого решения и для визуализации зависимостей вообще. ( Synaptic также доступен в Ubuntu, но я не считаю его интуитивным.)

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

    
ответ дан overprescribed 30.05.2012 в 18:45
23

package1: Зависит: package2 (& gt; = 1,8), но устанавливается 1.7.5-1ubuntu1

Объяснение сообщения:

  1. Чтобы ваша установка была завершена, пакет1 нуждается в пакете2.
  2. package2 должен быть доступен в версии & gt; = 1.8
  3. Менеджер пакетов проверил все репозитории и обнаружил только версию 1.7.5-1ubuntu1, которую он не смог бы установить, потому что она & lt; 1,8

Fix

Нет ни одного правильного ответа на этот вопрос, и нет простого ответа.

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

Сценарий A:

Все репозитории, к которым у вас есть доступ, не имеют package2 в версии & gt; = 1.8, поэтому вам нужно будет найти репозиторий. Если вы не можете найти репозиторий с версиями & gt; = 1.8, вам может потребоваться сборка и установка пакета2 из источника. А затем попробуйте установить пакет1.

Если вы хотите узнать, как создать пакет из исходного кода, проверьте другие вопросы / ответы или разместите новый.

Сценарий B:

Репозитории включают package2 в версии & gt; = 1.8, но менеджер пакетов по-прежнему хочет установить более старую версию (1.7.5).

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

Это может быть невозможно исправить вообще. Вы можете попробовать использовать apt или synaptic и искать все версии пакета2, доступные в репозиториях, и попытаться установить определенную версию & gt; = 1.8

Если у вас есть другие несовместимые пакеты, и вы сделаете это, вы получите список похожих сообщений об ошибках для всех других пакетов, которые препятствуют установке package2 & gt; = 1.8.

В этом случае у вас большая проблема. Вы хотели установить пакет 1, для которого требуется, чтобы package2 был & gt; = 1.8, но package2 в версии & gt; = 1.8 требует, чтобы пакет3 находился в версии & gt; = 6.7, и у вас есть версия пакета3 версии 6.3

Дело в том, что диспетчер пакетов (APT) пытается автоматически решить все эти зависимости, если это возможно. Когда он говорит, что это невозможно (и выдает сообщение, как в вопросе), тогда вы должны доверять ему.

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

Остерегайтесь, для этого для системных пакетов могут возникнуть серьезные проблемы. Вы можете заблокировать себя из системы, заблокировать критические службы и т. Д.

Сценарий C:

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

Сценарий D:

Менеджер пакетов имеет доступ к устаревшей информации о пакетах и ​​поэтому не может найти решение. Посмотрите другие ответы.

Сценарий E:

Менеджер пакетов имеет ошибку в коде разрешения зависимостей.

Вам нужно выяснить, что это действительно так, и затем выдать запрос об ошибке.

...

Сценарий Z:

Могут быть и другие сценарии.

Например, сторонники пакетов могли быть ошибочными и не проверяли, что пакет1 будет работать даже с версией package2 & lt; 1.8, и в спецификации они устанавливают неправильные зависимости.

    
ответ дан Vangel Ajanovski 30.05.2012 в 12:43
16

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

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

1 . Перед тем, как попробовать любую новую команду или добавить новую ppa, попробуйте это

Очистка кэша apt:

sudo apt-get clean

Очистка любых неиспользуемых зависимостей:

sudo apt-get autoremove

Обновление apt-cache

sudo apt-get update

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

2 . Попробуйте sudo apt-get install -f .

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

3 . Измените Download Server из Software Sources . Потому что иногда файлы на сервере повреждены.



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

  • либо набрав sudo add-apt-repository --remove ppa:someppa/ppa , а затем вручную удалив установленные файлы / библиотеки ppa

или

  • очистка ppa (это также удаляет установленные файлы)

    sudo apt-get install ppa-purge   #a one time install 
    sudo ppa-purge ppa:someppa/ppa  
    

5 . Если нет 4, это не ваше дело, то по крайней мере попробуйте удалить пакет, который отображается как сломанная зависимость. Затем попробуйте снова установить. Сообщается, что у него работает несколько человек.

6 . Всегда добавляйте стабильную версию репозитория / PPA.

7 Также убедитесь, что у вас есть все официальные репозитории (In Software Sources )

Пожалуйста, не включайте Proposed Updates , поскольку они предназначены для тестирования / разработчиков.

Как сказано doug:

  

Обычно лучшим первым шагом к решению этого является идентификация источника <pkg1> & amp; % Co_de%.

Кроме того, не отмечено, что во многих, если не в большинстве случаев, «& lt; whatever & gt; должно быть установлено», действительно означает, что «& lt; whatever & gt; установлено», и его следует пытаться удалить, если ничего не работает (как в пункт 5).

Я буду продолжать добавлять больше вещей, чтобы найти исправление <pkg2> .

    
ответ дан Ashu 21.05.2012 в 17:24
15

В большинстве случаев установка пакета через aptitude приведет к устранению неудовлетворенных зависимостей. По умолчанию пакет aptitude не был установлен на вашем pc.So, сначала установите его, запустив

sudo apt-get update
sudo apt-get install aptitude

то

sudo aptitude install packagename

Например,

    
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install ubuntu-sdk
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 ubuntu-sdk : Depends: qtcreator-plugin-ubuntu but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Установка пакета через aptitude

avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo aptitude install ubuntu-sdk
The following NEW packages will be installed:
  apparmor-easyprof{a} apparmor-easyprof-ubuntu{a} at{a} build-essential{a} 
  click{a} click-apparmor{a} click-dev{a} click-doc{a} cordova-ubuntu-2.8 
  cordova-ubuntu-2.8-examples{a} debhelper{a} devscripts{a} dh-apparmor{a} 
  dh-make{a} distro-info-data{a} dpkg-dev{a} dput{a} g++{a} g++-4.8{a} 
  geoclue-gypsy{a} libalgorithm-diff-perl{a} libalgorithm-diff-xs-perl{a} 
  libalgorithm-merge-perl{a} libboost-filesystem1.53.0{a} 
  libboost-program-options1.53.0{a} libboost-regex1.53.0{a} 
  libbotan-1.10-0{a} libdee-qt5-3{a} libdistro-info-perl{a} 
  libexporter-lite-perl{a} libglib2.0-dev{a} 
  libgstreamer-plugins-base1.0-dev{a} libgstreamer1.0-dev{a} libgypsy0{a} 
  libhud2{a} libio-stringy-perl{a} libjs-jquery{a} libjs-sphinxdoc{a} 
  libjs-underscore{a} liblockdev1{a} libmail-sendmail-perl{a} 
  libparse-debcontrol-perl{a} libpcre3-dev{a} libpcrecpp0{a} 
  libpoppler-qt5-1{a} libqdjango-db0{a} libqgsttools-p1{a} 
  libqt5clucene5{a} libqt5contacts5{a} libqt5declarative5{a} 
  libqt5designer5{a} libqt5designercomponents5{a} libqt5feedback5{a} 
  libqt5help5{a} libqt5location5-plugins{a} libqt5multimedia5{a} 
  libqt5multimedia5-plugins libqt5multimediaquick-p5{a} 
  libqt5multimediawidgets5{a} libqt5organizer5{a} 
  libqt5qml-graphicaleffects{a} libqt5script5 libqt5scripttools5{a} 
  libqt5svg5{a} libqt5svg5-dev libqt5systeminfo5{a} libqt5v8-5-dev 
  libqt5versit5{a} libqt5versitorganizer5{a} libqt5webkit5-dev 
  libqt5webkit5-qmlwebkitplugin{a} libqt5xmlpatterns5{a} 
  libqt5xmlpatterns5-dev libstdc++-4.8-dev{a} libsys-hostname-long-perl{a} 
  libthumbnailer0{a} libu1db-qt5-3{a} libunity-action-qt1{a} 
  libupstart-app-launch1{a} libusermetricsinput1{a} libxml2-dev{a} 
  libxslt1-dev{a} po-debconf{a} python3-apparmor-click{a} python3-click{a} 
  python3-magic{a} qmlscene qt3d5-dev qtbase5-doc{a} qtcreator{a} 
  qtcreator-doc{a} qtcreator-plugin-ubuntu{a} 
  qtcreator-plugin-ubuntu-common{a} qtdeclarative5-accounts-plugin 
  qtdeclarative5-cordova-2.8-plugin{a} qtdeclarative5-dev-tools 
  qtdeclarative5-doc-html{a} qtdeclarative5-folderlistmodel-plugin 
  qtdeclarative5-friends0.2 qtdeclarative5-localstorage-plugin 
  qtdeclarative5-particles-plugin qtdeclarative5-poppler1.0 
  qtdeclarative5-qtaudioengine-plugin qtdeclarative5-qtfeedback-plugin{a} 
  qtdeclarative5-qtlocation-plugin qtdeclarative5-qtmultimedia-plugin{a} 
  qtdeclarative5-qtorganizer-plugin qtdeclarative5-qtquick2-plugin{a} 
  qtdeclarative5-qtsensors-plugin qtdeclarative5-u1db1.0 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin{a} 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets{a} 
  qtdeclarative5-ubuntu-ui-toolkit-plugin{a} 
  qtdeclarative5-unity-action-plugin{a} qtdeclarative5-usermetrics0.1 
  qtdeclarative5-window-plugin{a} qtdeclarative5-xmllistmodel-plugin 
  qtgraphicaleffects5-doc{a} qtlocation5-dev{a} qtmultimedia5-dev 
  qtmultimedia5-doc{a} qtmultimedia5-doc-html{a} qtscript5-dev 
  qtscript5-doc{a} qtscript5-doc-html{a} qtsensors5-dev{a} qtsvg5-doc{a} 
  qtsvg5-doc-html{a} qttools5-dev qttools5-dev-tools qttools5-doc{a} 
  qtwebkit5-doc-html{a} schroot{a} schroot-common{a} sqlite3{a} 
  ubuntu-html5-container ubuntu-html5-sdk{ab} ubuntu-html5-theme{a} 
  ubuntu-html5-theme-examples ubuntu-sdk ubuntu-sdk-libs 
  ubuntu-sdk-libs-dev{a} ubuntu-ui-toolkit-doc{a} 
  ubuntu-ui-toolkit-examples{a} ubuntu-ui-toolkit-theme{a} 
  unity-action-doc{a} upstart-app-launch{a} upstart-app-launch-tools{a} 
  usermetricsservice{a} wdiff{a} zlib1g-dev{a} 
The following packages will be upgraded:
  cpp-4.8 gcc-4.8 gcc-4.8-base hud libasan0 libatomic1 libgcc-4.8-dev 
  libgcc1 libglib2.0-0 libglib2.0-bin libgomp1 libitm1 libquadmath0 
  libstdc++6 libtsan0 
15 packages upgraded, 151 newly installed, 0 to remove and 293 not upgraded.
Need to get 108 MB/126 MB of archives. After unpacking 273 MB will be used.
The following packages have unmet dependencies:
 ubuntu-html5-sdk : Depends: qtdeclarative5-ubuntu-webapps-api which is a virtual package.
                    Depends: ubuntu-html5-ui-toolkit but it is not going to be installed.
The following actions will resolve these dependencies:

     Keep the following packages at their current version:              
1)     qtcreator-plugin-ubuntu [Not Installed]                          
2)     ubuntu-html5-sdk [Not Installed]                                 
3)     ubuntu-sdk [Not Installed]                                       

     Leave the following dependencies unresolved:                       
4)     libhud-client2 recommends hud (= 13.10.1+13.10.20131014-0ubuntu1)
5)     qtcreator-plugin-ubuntu-common recommends qtcreator-plugin-ubuntu


Accept this solution? [Y/n/q/?] y
The following NEW packages will be installed:
  apparmor-easyprof{a} apparmor-easyprof-ubuntu{a} build-essential{a} 
  click{a} click-apparmor{a} cordova-ubuntu-2.8 debhelper{a} dh-apparmor{a} 
  dh-make{a} dpkg-dev{a} g++{a} g++-4.8{a} geoclue-gypsy{a} 
  libalgorithm-diff-perl{a} libalgorithm-diff-xs-perl{a} 
  libalgorithm-merge-perl{a} libdee-qt5-3{a} libglib2.0-dev{a} 
  libgstreamer-plugins-base1.0-dev{a} libgstreamer1.0-dev{a} libgypsy0{a} 
  libhud2{a} libjs-jquery{a} libmail-sendmail-perl{a} libpcre3-dev{a} 
  libpcrecpp0{a} libpoppler-qt5-1{a} libqdjango-db0{a} libqgsttools-p1{a} 
  libqt5clucene5{a} libqt5contacts5{a} libqt5designer5{a} 
  libqt5designercomponents5{a} libqt5feedback5{a} libqt5help5{a} 
  libqt5location5-plugins{a} libqt5multimedia5{a} libqt5multimedia5-plugins 
  libqt5multimediaquick-p5{a} libqt5multimediawidgets5{a} 
  libqt5organizer5{a} libqt5qml-graphicaleffects{a} libqt5script5 
  libqt5scripttools5{a} libqt5svg5{a} libqt5svg5-dev libqt5systeminfo5{a} 
  libqt5v8-5-dev libqt5versit5{a} libqt5versitorganizer5{a} 
  libqt5webkit5-dev libqt5webkit5-qmlwebkitplugin{a} libqt5xmlpatterns5{a} 
  libqt5xmlpatterns5-dev libstdc++-4.8-dev{a} libsys-hostname-long-perl{a} 
  libthumbnailer0{a} libu1db-qt5-3{a} libunity-action-qt1{a} 
  libupstart-app-launch1{a} libusermetricsinput1{a} libxml2-dev{a} 
  libxslt1-dev{a} po-debconf{a} python3-apparmor-click{a} python3-click{a} 
  qmlscene qt3d5-dev qtdeclarative5-accounts-plugin 
  qtdeclarative5-cordova-2.8-plugin{a} qtdeclarative5-dev-tools 
  qtdeclarative5-folderlistmodel-plugin qtdeclarative5-friends0.2 
  qtdeclarative5-localstorage-plugin qtdeclarative5-particles-plugin 
  qtdeclarative5-poppler1.0 qtdeclarative5-qtaudioengine-plugin 
  qtdeclarative5-qtfeedback-plugin{a} qtdeclarative5-qtlocation-plugin 
  qtdeclarative5-qtmultimedia-plugin{a} qtdeclarative5-qtorganizer-plugin 
  qtdeclarative5-qtquick2-plugin{a} qtdeclarative5-qtsensors-plugin 
  qtdeclarative5-u1db1.0 qtdeclarative5-ubuntu-ui-extras-browser-plugin{a} 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets{a} 
  qtdeclarative5-ubuntu-ui-toolkit-plugin{a} 
  qtdeclarative5-unity-action-plugin{a} qtdeclarative5-usermetrics0.1 
  qtdeclarative5-window-plugin{a} qtdeclarative5-xmllistmodel-plugin 
  qtlocation5-dev{a} qtmultimedia5-dev qtscript5-dev qtsensors5-dev{a} 
  qttools5-dev qttools5-dev-tools sqlite3{a} ubuntu-html5-container 
  ubuntu-html5-theme{a} ubuntu-html5-theme-examples ubuntu-sdk-libs 
  ubuntu-ui-toolkit-theme{a} upstart-app-launch{a} 
  upstart-app-launch-tools{a} usermetricsservice{a} wdiff{a} zlib1g-dev{a} 
The following packages will be upgraded:
  cpp-4.8 gcc-4.8 gcc-4.8-base hud libasan0 libatomic1 libgcc-4.8-dev 
  libgcc1 libglib2.0-0 libglib2.0-bin libgomp1 libitm1 libquadmath0 
  libstdc++6 libtsan0 
15 packages upgraded, 108 newly installed, 0 to remove and 293 not upgraded.
Need to get 27.1 MB/45.8 MB of archives. After unpacking 104 MB will be used.
Do you want to continue? [Y/n/?] 
    
ответ дан Avinash Raj 29.12.2013 в 17:02
10

Мой ответ аналогичен приведенному выше рику.

Использование apt-get clean , apt-get autoclean , apt-get autoremove , apt-get upgrade , apt-get update , apt-get -u dist-upgrade и т. д. все не работает для меня.

Я, наконец, разрешил эту проблему, спустившись в дерево зависимостей через apt-get install , как показано ниже. В моем случае я хотел установить libmagickwand-dev :

apt-get install libmagickwand-dev

Я получил эту ошибку:

The following packages have unmet dependencies:
 libmagickwand-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
                     Depends: libmagickcore-dev (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed

Итак, я побежал apt-get install для одной из неудачных зависимостей:

apt-get install libmagickcore-dev

The following packages have unmet dependencies:
 libmagickcore-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
                     Depends: libgraphviz-dev but it is not going to be installed

Я спустился дальше по дереву:

apt-get install libgraphviz-dev

с другой ошибкой:

The following packages have unmet dependencies:
 libgraphviz-dev : Depends: libgvc5 (= 2.26.3-10ubuntu1) but it is not going to be installed

Еще глубже по дереву:

apt-get install libgvc5

По какой-то странной причине это удалось, и мне удалось установить исходный пакет, который мне нужен, с apt-get install libmagickwand-dev :

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libcdt4 libgd2-xpm libgraph4 libpathplan4
Suggested packages:
  libgd-tools
The following NEW packages will be installed:
  libcdt4 libgd2-xpm libgraph4 libgvc5 libpathplan4
0 upgraded, 5 newly installed, 0 to remove and 2 not upgraded.
Need to get 808 kB of archives.
After this operation, 2,320 kB of additional disk space will be used.
Do you want to continue [Y/n]?
    
ответ дан Michael Franzl 20.12.2012 в 11:47
8

Отличные ответы! Но сегодня мое дело отличается от вашего. Вот мой совет.

Проблема:

Мне не удалось установить apache2 в ubuntu 10.10.

rick@wen-VirtualBox:~$ sudo apt-get install apache2

Reading package lists... Done

Building dependency tree      

Reading state information... Done

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.

The following information may help to resolve the situation:

The following packages have unmet dependencies:

 apache2 : Depends: apache2-mpm-worker (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-prefork (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-event (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-itk (= 2.2.16-1ubuntu3) but it is not going to be installed

           Depends: apache2.2-common (= 2.2.16-1ubuntu3) but it is not going to be installed

E: Broken packages

Решение:

Мой способ добавить зависящий пакет в список установки.

Если «sudo apt-get install apache2» не удалось, попробуйте « sudo apt-get install apache2 apache2.2-common ».

См? apache2.2-common приходит из журнала ошибок предыдущего шага.

Наконец, я обнаружил, что существует цепочка зависимостей:

 apache2.2-common <-- apache2.2-bin <-- libaprutil1-ldap <-- libaprutil1

Для первых 3 пакетов apt-get log сказал мне, что «не будет установлен»,

, но для последнего пакета он показывает 'libaprutil1-ldap: Depends: libaprutil1 (= 1.3.9 + dfsg-3build1), но 1.3.9 + dfsg-3ubuntu0.10.10.1 должен быть установлен

У меня есть другая версия, существующая в моей lib, поэтому:

sudo apt-get remove libaprutil1

sudo apt-get install apache2

Теперь все в порядке.

    
ответ дан rick 24.11.2012 в 16:55
7

что нечеткие зависимости Ошибка

В Ubuntu пакеты являются основным способом создания, развертывания и установки программного обеспечения. Очень просто, пакеты являются альтернативой загрузке, созданию и установке программного обеспечения с нуля. Они предлагают множество преимуществ с точки зрения установки, удаления, мониторинга и обработки взаимодействий между частями программного обеспечения по стандартной модели «построить из источника».   Ubuntu использует централизованную систему упаковки, т.е. каждый пакет зависит от некоторых других пакетов. Когда мы устанавливаем пакет, его зависимости будут установлены. Ошибка неудовлетворенных зависимостей возникает, когда зависимости пакета недоступны для установки

Возможные причины

1.Computer is not connected to the Internet
2.The repository containing the depandancy package is not enabled
3.Package catalog is not updated
4.The version of the depandancy in the current repository is old
5.Software index is broken
6.The depandancy is not available for ubuntu

Давайте попробуем решить эту проблему

  1. Подключение к Интернету: D
  2. Убедитесь, что все репозитории по умолчанию включены

    - & gt; Вы можете легко добавить их в Software Center - & gt; Редактировать & gt; Источники программного обеспечения- & gt; Другие источники- & gt; Добавить "

    - & GT; Запустите Software Center .

    - & GT ;. В панели перейдите к Edit и выберите Software Sources .

    - & gt; Убедитесь, что все репозитории отмечены

  3. Обновить каталог программного обеспечения

    нажмите на верхний правый значок и выберите обновленную доступную запись в меню

и нажмите кнопку подтверждения

4.type ctrl + alt + t , чтобы открыть терминал и введите  % Co_de%

5.Подробнее добавьте ppa, используя ppa-purge    ppa-purge

  

Эта программа отключает PPA из ваших источников программного обеспечения и возвращается   ваша система возвращается к официальным пакетам Ubuntu. Вы можете использовать это для   верните свою систему в нормальное состояние после тестирования новой версии из PPA.

Синтаксис

sudo ppa-purge ppa:<repository-name>/<subdirectory>

Пример

sudo ppa-purge ppa:ubuntu-mozilla-daily/ppa
  1. открыть программный центр и попытаться установить любое программное обеспечение. Если появилось следующее диалоговое окно, нажмите кнопку восстановления и подождите

Else введите ctrl + alt + t , чтобы открыть терминал и введите sudo apt-get install -f и следуйте инструкциям на экране

Если все еще возникает ошибка, вы можете задать ее в askbuntu

    
ответ дан Tachyons 23.05.2012 в 20:09
5

... не забывайте о 'build-dep'

В дополнение к этим ответам выше, я должен признать, что я удивлен, что никто не упомянул об этом подходе, который я всегда использовал как «серебряную пулю» в любое время, когда я сталкивался с конфликтами apt-get или неразрешенными пакетами (или даже если система упряма .... ha!).

EDITED: рекомендуется использовать sudo dpkg -r [package] , так как он имеет довольно мощную функцию удаления. Поскольку apt-get работает вместе с dpkg , что означает, что apt-get будет подчиняться функции dpkg .

  sudo dpkg -r [package]
  sudo apt-get build-dep [package]  
  ## pre-install all deps for the package

Вы вызываете apt-get, чтобы очистить неудавшийся пакет, который вы пытались установить в системе, и затем вы вызываете команду build-dep, которая apt-get будет захватывать и устанавливать зависимости, относящиеся к этому пакету, так что они 'будет удовлетворять пакет раньше. Затем, наконец, вызовите apt-get install:

sudo apt-get install [package]

.... "Тьфу! Покрутим тебя, пока ты не будешь кричать «Дядя!»

Это редко случалось в течение моих долгих лет использования Linux, но я решил использовать этот подход редко и преуспел. Это пример недавней борьбы, которая была у меня ранее месяц назад с пакетами mysql-client/mysql-server . После дюжины неудачных попыток сбросить мой корневой пароль с помощью mysql-сервера (даже с помощью -skip-grant-tables techqiue, но все же не удалось), я, наконец, преуспел в «скручивании руки Linux, пока он не закричал« Дядя! »:

sudo dpkg -r mysql-server mysql-client
sudo apt-get autoclean  
## this dumps any copy of existing package to prevent apt-get from "re-using" it.
sudo apt-get build-dep mysql-client   
 ## one package at a time, starting with client first
sudo apt-get install mysql-client
sudo apt-get build-dep mysql-server
sudo apt-get install mysql-server

apt-get autoclean является ключевым в этом решении

    
ответ дан Faron 21.03.2015 в 14:51
3

Во время установки пакетов i386 в 64-битных системах Multiarch Ubuntu

Если вы пытаетесь установить пакет, который зависит от многих пакетов i386, вышеупомянутая ошибка зависимости также будет вызвана, если вы не сможете добавить архитектуру i386, выполнив команду sudo dpkg --add-architecure i386 .

Пример:

avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install skype
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 skype : Depends: skype-bin but it is not installable
E: Unable to correct problems, you have held broken packages.
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo dpkg --add-architecture i386
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install skype
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  gcc-4.8-base:i386 gcc-4.9-base:i386 libasound2:i386 libasound2-plugins:i386
  libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
  libavahi-common-data:i386 libavahi-common3:i386 libc6:i386
  libcgmanager0:i386 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386
  libdbusmenu-qt2:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
  libdrm-radeon1:i386 libdrm2:i386 libelf1:i386 libexpat1:i386 libffi6:i386
  libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386
  libgcrypt11:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
  libglapi-mesa:i386 libglib2.0-0:i386 libgnutls26:i386 libgpg-error0:i386
  libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0:i386
  libgstreamer1.0-0:i386 libice6:i386 libjack-jackd2-0:i386 libjbig0:i386
  libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
  libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libllvm3.4:i386
  liblzma5:i386 libmysqlclient18:i386 libnih-dbus1:i386 libnih1:i386
  libogg0:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386
  libpcre3:i386 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386
  libqt4-declarative:i386 libqt4-network:i386 libqt4-opengl:i386
  libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-xml:i386
  libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386 libqtgui4:i386
  libqtwebkit4:i386 libsamplerate0:i386 libselinux1:i386 libsm6:i386
  libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
  libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386
  libtxc-dxtn-s2tc0:i386 libudev1:i386 libuuid1:i386 libvorbis0a:i386
  libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386
  libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386
  libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386
  libxfixes3:i386 libxi6:i386 libxml2:i386 libxrender1:i386 libxshmfence1:i386
  libxslt1.1:i386 libxss1:i386 libxt6:i386 libxv1:i386 libxxf86vm1:i386
  mysql-common skype-bin:i386 sni-qt:i386 zlib1g:i386
Suggested packages:
  nas:i386 glibc-doc:i386 locales:i386 rng-tools:i386 libglide3:i386
  gnutls-bin:i386 krb5-doc:i386 krb5-user:i386 libvisual-0.4-plugins:i386
  gstreamer-codec-install:i386 gnome-codec-install:i386
  gstreamer1.0-tools:i386 gstreamer1.0-plugins-base:i386 jackd2:i386
  pulseaudio:i386 libqt4-declarative-folderlistmodel:i386
  libqt4-declarative-gestures:i386 libqt4-declarative-particles:i386
  libqt4-declarative-shaders:i386 qt4-qmlviewer:i386 libqt4-dev:i386
  libicu48:i386 libthai0:i386 qt4-qtconfig:i386
Recommended packages:
  xml-core:i386
The following NEW packages will be installed:
  gcc-4.8-base:i386 gcc-4.9-base:i386 libasound2:i386 libasound2-plugins:i386
  libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
  libavahi-common-data:i386 libavahi-common3:i386 libc6:i386
  libcgmanager0:i386 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386
  libdbusmenu-qt2:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
  libdrm-radeon1:i386 libdrm2:i386 libelf1:i386 libexpat1:i386 libffi6:i386
  libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386
  libgcrypt11:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
  libglapi-mesa:i386 libglib2.0-0:i386 libgnutls26:i386 libgpg-error0:i386
  libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0:i386
  libgstreamer1.0-0:i386 libice6:i386 libjack-jackd2-0:i386 libjbig0:i386
  libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
  libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libllvm3.4:i386
  liblzma5:i386 libmysqlclient18:i386 libnih-dbus1:i386 libnih1:i386
  libogg0:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386
  libpcre3:i386 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386
  libqt4-declarative:i386 libqt4-network:i386 libqt4-opengl:i386
  libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-xml:i386
  libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386 libqtgui4:i386
  libqtwebkit4:i386 libsamplerate0:i386 libselinux1:i386 libsm6:i386
  libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
  libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386
  libtxc-dxtn-s2tc0:i386 libudev1:i386 libuuid1:i386 libvorbis0a:i386
  libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386
  libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386
  libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386
  libxfixes3:i386 libxi6:i386 libxml2:i386 libxrender1:i386 libxshmfence1:i386
  libxslt1.1:i386 libxss1:i386 libxt6:i386 libxv1:i386 libxxf86vm1:i386
  mysql-common skype skype-bin:i386 sni-qt:i386 zlib1g:i386
0 upgraded, 115 newly installed, 0 to remove and 7 not upgraded.
Need to get 63.7 MB of archives.
After this operation, 225 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
    
ответ дан Avinash Raj 21.04.2014 в 09:46
1

После того, как я попытался приблизиться к каждому методу, упомянутому в этом потоке (и других), я был близок к тому, чтобы отказаться. Я обновил свой Debian Lenny до Squeeze, и я не мог на всю жизнь понять, почему PHP5, Apache, MySQL и т. Д. Не хотят устанавливать. В конце я попытался использовать

sudo apt-get purge apache2
sudo apt-get purge php5
sudo apt-get purge mysql-server
sudo apt-get clean
sudo apt-get autoremove
sudo apt-get install apache2 php5 mysql-server

.. и он работал безупречно! ( Остерегайтесь, может уничтожать ваши файлы конфигурации, поэтому поддерживайте их! )

    
ответ дан h2ooooooo 15.01.2013 в 11:00
1

Что сработало для меня, так это переустановить зависимость. Это тот случай, когда установленная версия более поздняя, ​​чем последняя (какие синаптические шоу). Это фактически эквивалентно тому, чтобы позволить синаптическому понизить пакет зависимостей.

Еще одна вещь, которая сработала, - это использование «aptitude»:

root@arau:~# aptitude install libgfortran3
The following NEW packages will be installed:
  libgfortran3{b} 
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 250 kB of archives. After unpacking 1 230 kB will be used.
The following packages have unmet dependencies:
 libgfortran3 : Depends: gcc-4.8-base (= 4.8.2-19ubuntu1) but 4.8.4-2ubuntu1~14.04 is installed.
Internal error: found 2 (choice -> promotion) mappings for a single choice.
The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     libgfortran3 [Not Installed]                       



Accept this solution? [Y/n/q/?] n
Internal error: found 2 (choice -> promotion) mappings for a single choice.
Internal error: found 2 (choice -> promotion) mappings for a single choice.
The following actions will resolve these dependencies:

      Downgrade the following packages:                                        
1)      cpp-4.8 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
2)      gcc-4.8 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
3)      gcc-4.8-base [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]  
4)      libasan0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      
5)      libatomic1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]    
6)      libgcc-4.8-dev [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
7)      libgomp1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      
8)      libitm1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
9)      libquadmath0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]  
10)     libstdc++6 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]    
11)     libtsan0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      

Accept this solution? [Y/n/q/?] y
    
ответ дан Bob Yoplait 19.04.2015 в 22:59
0

Если вы получаете такую ​​ошибку:

Это говорит вам, что пакеты уже установлены, но он не установил все другие пакеты, которые ему нужны для работы. Вы должны решить эту проблему, выполнив следующее:

sudo apt-get -f install

(Эта команда должна автоматически устанавливать неудовлетворенные зависимости.)

или что-то вроде этого (с соответствующими пакетами) :

sudo apt-get install click curl dpkg-dev python-lzma python-requests imagemagick ubuntu-dev-tools

Но если вы закончите с такой ошибкой:

Затем вы можете найти способы их установки здесь или здесь .
В приведенном выше примере вы должны найти такую ​​страницу, как PPA или установите .deb для 32 бит или .deb для 64bit .     

ответ дан Wilf 02.03.2014 в 11:44