2010-01-26 2 views
2

У меня есть файл Debian/управления, который включает в себя:Как сделать пакет Debian зависит от нескольких версий libboost

Build-Depends: ... libboost1.35-dev, libboost-date-time1.35-dev, ... 

Это останавливает пакет от построения современных систем Ubuntu.

Я мог бы просто сменить все 1.35s на 1.38s, а затем он будет работать на современных Ubuntu, но не на более старых версиях.

Я хотел бы сделать что-то вроде:

Build-Depends: ... libboost-dev (>=1.35), libboost-date-time-dev (>=1.35), ... 

но мне кажется, что 1,35 жестко закодировано в именах пакетов. то есть libbost1.35-dev - это другой пакет из libboost1.38m, а не только другой версии одного и того же пакета.

Мое понимание здесь правильно? Я могу понять основные номера версий hardcoding в имени пакета (если ABI новой версии нарушает обратную совместимость).

Есть ли способ написать файл управления Debian, который позволяет зависящему от версии конкретной версии libboost или выше?

Thanks,

Chris.

ответ

7

Вы должны «Зависит от libboost-dev», если нет особых причин для таргетинга на конкретные версии Boost. Этот пакет libboost-dev представляет собой псевдо-пакет, который тянет подходящую версию libboost.

Если вы действительно хотите, чтобы нацелить их конкретно, используйте оператор «или»:

Depends: A | B | C 

См: http://www.debian.org/doc/debian-policy/ch-relationships.html

+0

Я только что узнал о «зависимых пакетов» для повышения. Я могу зависеть от libboost-dev (> = 1.35), просто не установил его ... – fadedbee

Смежные вопросы