Debian's Depend: тег не работает с apt-get

Управляющий файл пакета A_0.0_all.deb содержит зависимость от пакета B 0.0:

Depends: B (= 0.0)

Управляющий файл пакета B_0.0_all.deb имеет версию 0.0:

Version: 0.0

В том же репозитории Debian находится пакет B_1.0_all.deb. Когда я пытаюсь установить Пакет A, я получаю следующую ошибку:

[...]
The following packages have unmet dependencies:
 A : Depends: B (= 0.0) but 1.0 is to be installed.
E: Unable to correct problems, you have held broken packages.

«apt-cache madison B» показывает обе версии в репозитории. Почему apt-get не устанавливает версию, от которой зависит A? Неправильный ли файл управления? Как написать «Зависит»: чтобы apt-get установил точную версию, указанную в контрольном файле пакета А?

Я строю репозиторий, создаю репозиторий с помощью и устанавливаю с помощью:

  • Ubuntu 13.04
  • apt 0.9.7.7ubuntu4 для amd64, скомпилировано 12 апреля 2013 г. 23:49:05
1
задан 20 May 2015 в 01:19

1 ответ

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

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

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

0
ответ дан 20 May 2015 в 11:19

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

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