Я разрабатываю два пакета Ubuntu, какой зависит от другого.
Скажите, foo
который зависит от libfoo
.
Я увеличиваю foo
и libfoo
присвойте версию вместе. Это всегда имеет место это foo
версия 1.2.1
зависит от libfoo
версия 1.2.1
.
Каков стандарт debian процесс для создания libfoo
и foo
?
Сделайте я должен создать и установить libfoo
прежде и только затем компилируют foo
?
Я могу иметь pbuilder
так или иначе поймите foo
потребности libfoo
, и установка libfoo
перед компиляцией foo
?
Какова лучшая практика для этого случая
РЕДАКТИРОВАНИЕ на дополнительной информации в вопросе:
Pbuild исходно делает то, что Вы хотите - просто предоставляют ему надлежащий dsc файл. Взгляните на некоторый реальный пример с версией в зависимостях как nmap
apt-get source nmap; cat nmap_*.dsc
и посмотрите на Build-Depends
пункт:
...
Build-Depends: debhelper (>= 9), libgtk2.0-dev, dh-autoreconf, flex, bison, libssl-dev, libpcap0.8-dev, libpcre3-dev, binutils-dev, liblinear-dev, python (>= 2.3.5-7), python-all-dev, liblua5.2-dev
...
В Вашем случае Вам нужно что-то как
Build-Depends: libfoo (=1.2.1), flex, bison, ...
Исходное сообщение:
Так, давайте суммировать комментарии....
В чем Вы нуждаетесь, два пункта из файла правила debian/control
:
Я сильно убеждаю, чтобы Вы для чтения целой Ubuntu, Упаковывающей Руководство.Your вопрос, были обращены в 2,2. Файл управления. Считайте также ту же информацию, записанную командой Debian в Руководстве Новых Специалистов по обслуживанию Debian, более точно Главе 5 - файлы Управления и их поля. Проведенное время с руководствами заплатит в сохранении Вас много проблем в будущем, если Вы соберетесь поддержать deb пакеты в своей компании (или почему не в Debian или Ubuntu однажды :)).
Если те пакеты имеют отдельные исходные архивы. Я подразумеваю, что они - отличные проекты. Затем ответ Rostislav Kandilarov является корректным.
Иначе, Если они находятся в тех же исходных файлах. Затем никакие заботы, если Ваш источник компилирует и устанавливает хорошо использование make
(cmake
или безотносительно оснащают Ваше использование). Упаковочная операция происходит после компиляции всего источника.
Быстрый обзор процесса после вызова debuild
... и т.д. (Точный процесс может переопределить в ./debian/rules
файл)
./debian/tmp/
Отдельные файлы к ./debian/tmp/foo/
& ./debian/tmp/libfoo/
папки.
Двоичный пакет, который будет создан, должен быть объявлен в ./debian/control
файл:
Source: foo
...
Package: foo
...
Depends: libfoo (=${binary:Version}), ..
...
Package: libfoo
...
И файлы, которые должны быть в каждом пакете в foo.install
& libfoo.install
соответственно.
Файлы, сжатые до debian, архивируют с новыми сгенерированными файлами управления.
Позвольте мне ответить на Ваши вопросы:
Каков стандарт debian процесс для создания libfoo и нечто?
:/Я не могу рекомендовать им долго, руководство для получения запускается, но так же, как ссылки На меня, лучшее смотрело на реальные примеры:
http://packages.ubuntu.com/source/xenial/vlc
Сделайте Вы видите, сколько двоичных пакетов является сборкой тот же источник! Проверьте внизу и загрузите *.debian.tar.xz
архив, которые имеют все файлы, раньше упаковывал VLC.
Я должен создать и установить libfoo прежде и только затем скомпилировать нечто?
Нет. никакая потребность.
У меня может быть pbuilder, так или иначе понимают, что нечто нужны libfoo и установка libfoo прежде, чем скомпилировать нечто?
Нет. никакая потребность в Build-Depends:
поскольку это уже доступно в исходном дереве. Но это должно быть включено в Depends:
из foo
двоичный файл.