Проблема с зависимостями файла управления Debian

Я создаю пакет, который зависит от другого. Номер версии пакета 1: 8.5.2-xxxxxxxxxxxx. Я пытаюсь заставить пакет 2 зависеть от 8.5.2 и игнорировать номер версии. Это должно точно зависеть от 8.5.2, но подойдет любая версия 8.5.2. Все, что я прочитал, похоже, указывает на то, что я могу указать только версию без номера редакции для зависимостей и других настроек в управляющем файле, но это не работает. Он всегда говорит:

dpkg: проблемы с зависимостями препятствуют настройке [продукт2]: [продукт2] зависит от [продукт1] (= 8.5.2); однако: Версия [product1] в системе — 8.5.2-xxxxxxxxxxxx.

Здесь моя строка зависимостей в управляющем файле

Зависит: [продукт1] (=8.5.2)

Кто-нибудь знает, возможно ли это?


person user640071    schedule 01.03.2011    source источник


Ответы (1)


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

Depends: [product1] (>= 8.5.2), [product1] (<< 8.5.3)

Однако это довольно грязное решение, потому что я считаю, что номер версии, такой как 8.5.3 ~ beta1, все равно будет принят. Еще более грязным решением было бы использовать в этом случае (<< 8.5.3~~).

person Arrowmaster    schedule 01.03.2011
comment
Что означает символ ~ в этом примере? - person user640071; 02.03.2011
comment
Способ сравнения номеров версий пакетов в Debian обрабатывается dpkg. В dpkg символу ~ было присвоено значение ниже, чем nul, замещаемое всем остальным. Например, это порядок, видимый dpkg: 0.5, 0.9, 1.0~rc1, 1.0~rc2, 1.0, 1.0.1 - person Arrowmaster; 02.03.2011