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

Я получаю сообщение об ошибке, которая уже установлена. Я видел версии этих вопросов о различных пакетах и ​​пробовал все эти решения, но я все еще не могу понять, в чем проблема или как ее исправить. В итоге: Я пытаюсь apt-get установить вызов пакета libxmlada5-dev, который говорит, что это зависит от пакета с именем gnat. Справедливо, поэтому я пытаюсь установить комара. Но тогда Гнат говорит, что он опирается на Гнат 4,9. Странно, но хорошо. Поэтому, когда я пытаюсь установить gnat-4.9, он говорит, что он на самом деле уже установлен! Я попытался удалить и переустановить gnat-4.9, я попытался sudo apt-get -f install , я попытался apt clean и т. Д. Ни один из этих вариантов ничего не делает, так как это похоже на зависимость уже встретил. Вот моя конкретная ошибка:

sudo apt-get install gnat
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:
 gnat : Depends: gnat-4.9 but it is not going to be installed

и здесь я пытаюсь обновить зависимость:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
gnat-4.9 is already the newest version (4.9.3-3ubuntu5).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

наконец, вот что я получаю со списком apt-cache policy gnat и gnat-4.9:

gnat:
  Installed: (none)
  Candidate: 4.9ubuntu2
  Version table:
     4.9ubuntu2 500
        500 https://my-company-apt-mirror.corp/ubuntu xenial/universe amd64 Packages

gnat-4.9:
  Installed: 4.9.3-3ubuntu5
  Candidate: 4.9.3-3ubuntu5
  Version table:
 *** 4.9.3-3ubuntu5 500
        500 https://my-company-apt-mirror.corp/ubuntu xenial/universe amd64 Packages
        100 /var/lib/dpkg/status

0
задан 20 July 2020 в 21:38

2 ответа

I figured out the problem. It turns out the error message on apt-get was completely useless and misleading (and if someone can point me in the right direction I'm happy to submit a bug report). But by downloading the package and trying to install it with dpkg -i, I found that gnat required a version of gcc less than 7. So 'all' I had to do was get rid of gcc-7 and downgrade all its dependencies to versions that use gcc-5.

0
ответ дан 30 July 2020 в 22:05

Я предполагаю, что вы используете Xenial (16.04 LTS).

Команда apt-cache policy выводит коды 500 и 100, что означает устанавливаемое и установленное состояние соответственно. Я не мог воспроизвести ту же ошибку здесь, потому что я в настоящее время использую Bionic, поэтому я не могу дать вам идеальный ответ. Попробуйте эти варианты:

  • Список источников :

Проверьте свой /etc/apt/sources.list . Пример исходного Xenial source.list. Может быть, у вас есть только основная ссылка, и система не может установить. Выводы этих ошибок apt-get вводят в заблуждение.

  • Ручное удаление gnat :

Сначала проверьте, есть ли оно в вашем установленном списке, просто чтобы убедиться:

dpkg - л | grep -w gnat .

Затем вы можете удалить с помощью:

dkpg --purge (<вероятно, здесь нужен sudo).

Наконец

Попробуйте снова установить библиотеку, выполнив sudo apt-get update ранее.

0
ответ дан 30 July 2020 в 22:05

Другие вопросы по тегам:

Похожие вопросы: