Вопрос или проблема
Я собираюсь установить следующий пакет: gcc-4.9-aarch64-linux-gnu
Но apt не может его найти. Я скачал .deb вручную и установил его с помощью dpkg, но есть некоторые недостающие зависимости. Когда я использую apt для исправления проблемы, он говорит:
$ sudo apt-get install gcc-4.9-aarch64-linux-gnu
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
gcc-4.9-aarch64-linux-gnu уже самая новая версия (4.9.3-13ubuntu2cross1).
Вы могли бы запустить 'apt --fix-broken install', чтобы это исправить.
Следующие пакеты имеют неудовлетворенные зависимости:
gcc-4.9-aarch64-linux-gnu : Зависит: cpp-4.9-aarch64-linux-gnu (= 4.9.3-13ubuntu2cross1), но он не может быть установлен
Зависит: binutils-aarch64-linux-gnu (>= 2.26)
Зависит: gcc-4.9-aarch64-linux-gnu-base (= 4.9.3-13ubuntu2cross1), но он не может быть установлен
Зависит: libgcc-4.9-dev-arm64-cross (= 4.9.3-13ubuntu2cross1), но он не может быть установлен
Зависит: libmpfr4 (>= 3.1.3), но он не может быть установлен
Рекомендуется: libc6-dev-arm64-cross (>= 2.13-0ubuntu6), но он не будет установлен
E: Неудовлетворенные зависимости. Попробуйте 'apt --fix-broken install' без пакетов (или укажите решение).
Что означает но он не может быть установлен
? Почему я не могу его установить? Я добавил все 4 основных репозитория из Ubuntu. Я использую ubuntu 18.04.
ИСПРАВЛЕНИЕ: Я видел эту ссылку. НО я хочу установить его в любом случае. Как я могу? Проблема с ручной установкой заключается в множестве зависимых пакетов. Должен ли я скачать и установить все их вручную? Не менее трудоемкий способ?!
Вы можете вручную найти пакеты, выполнив поиск на packages.ubuntu.com. Например, вы можете следовать по ссылкам, чтобы получить загружаемый deb одного из зависимостей отсюда: https://packages.ubuntu.com/en/xenial/cpp-4.9-aarch64-linux-gnu.
Тем не менее, может быть и более простой способ. Поскольку это похоже на Xenial, если вы отключите все репозитории в /etc/apt/sources.list
и оставите включенными только репозитории main
и universe
для Xenial (например, deb http://us.archive.ubuntu.com/ubuntu/ xenial main universe
), то, возможно, apt-get install gcc-4.9-aarch64-linux-gnu
будет работать. Убедитесь, что сначала выполните apt remove gcc-4.9-aarch64-linux-gnu
. Также будьте осторожны, убедитесь, что только те зависимости, которые вы хотите, будут загружены. Иногда такие вещи могут попытаться установить Xenial glibc
, что может сломать вашу систему.
Ответ или решение
Как скачать пакет с зависимостями вручную
Введение
При установке пакета gcc-4.9-aarch64-linux-gnu
на вашей системе Ubuntu 18.04, вы столкнулись с проблемой незавершённых зависимостей. Система сообщает, что некоторые зависимости не установимы. В этом руководстве мы подробно рассмотрим, как вручную скачать и установить необходимые пакеты, чтобы обеспечить полноценную работу gcc
.
Понимание ошибки
Ошибка "but it is not installable" может указывать на несколько возможных причин:
- Пакет недоступен в активированных источниках обновлений.
- Пакет был удален или перемещен в более ранние репозитории.
- Несовместимость версии пакета с вашей версией Ubuntu.
Учитывая, что вы являетесь пользователем Ubuntu 18.04, может быть полезно обратить внимание на то, что искомый пакет gcc-4.9-aarch64-linux-gnu
может принадлежать другому релизу (возможно, Xenial).
Манипуляции с репозиториями
Чтобы попытаться установить пакет с зависимостями через apt
, выполните следующие шаги:
-
Отключите другие ненужные репозитории. Вам стоит редактировать файл
/etc/apt/sources.list
, оставив только следующие строки для Xenial:deb http://us.archive.ubuntu.com/ubuntu/ xenial main universe
-
Обновите списки пакетов:
sudo apt-get update
-
Удалите текущую установку (если это возможно):
sudo apt remove gcc-4.9-aarch64-linux-gnu
-
Попробуйте установить пакет еще раз:
sudo apt-get install gcc-4.9-aarch64-linux-gnu
Если установка пройдет успешно, то необходимые зависимости будут установлены автоматически.
Ручное скачивание зависимостей
Если предыдущий метод не сработал, придется скачать зависимости вручную. Для этого выполните следующие шаги:
-
Определите необходимые зависимые пакеты. Исходные зависимости, упомянутые в вашем сообщении, включают:
cpp-4.9-aarch64-linux-gnu
binutils-aarch64-linux-gnu
gcc-4.9-aarch64-linux-gnu-base
libgcc-4.9-dev-arm64-cross
libmpfr4
- Рекомендуется:
libc6-dev-arm64-cross
-
Посетите сайт репозиториев. Перейдите по packages.ubuntu.com и введите названия пакетов в строку поиска. Например, вы можете найти и скачать
cpp-4.9-aarch64-linux-gnu
по следующей ссылке: -
Скачайте пакеты .deb вручную. Перейдите к каждой из зависимостей и загружайте .deb файлы на свой компьютер.
-
Установите скачанные пакеты. Используйте
dpkg
для установки каждой зависимости:sudo dpkg -i /путь/к/файлу/имя_пакета.deb
-
Проверка и установка оставшихся зависимостей. Если при установке возникли ошибки, используйте:
sudo apt-get install -f
Это позволит системе установить пакеты, которые могут быть пропущены.
Заключение
Хотя установка пакетов с зависимостями вручную может показаться утомительной и сложной, современные инструменты еще больше её упрощают. Редактирование репозиториев, поиск и установка пакетов через apt
или dpkg
— это эффективные способы работы с зависимостями. Следуя вышеописанным шагам, вы сможете успешно установить gcc-4.9-aarch64-linux-gnu
и его зависимости. Если возникнут дальнейшие вопросы, не стесняйтесь обращаться за помощью к сообществу Ubuntu или профессиональным ИТ-экспертам.