Я сделал пакет для своего PPA и загрузил его. Он построен без проблем.
Затем я сделал еще один пакет, который зависел от первого, и загрузил его. Не удалось, потому что не удалось найти файлы в первом пакете. Это заставляет меня поверить, что первый пакет даже не был установлен.
Как я могу убедиться, что первый пакет установлен, прежде чем он попытается собрать второй пакет?
Контрольный файл для первого пакета (libjsoncpp):
Источник: jsoncpp Приоритет: дополнительный Сопровождающий: Натан Осман Сборка-Зависит: debhelper (> = 7) Стандарты-Версия: 3.8.3 Раздел: libs Домашняя страница: http://jsoncpp.sf.net Пакет: jsoncpp-dev Раздел: libdevel Архитектура: любая Зависит от: libjsoncpp (= $ {binary: Version}) Описание: библиотека синтаксического анализа JSON для C ++ jsoncpp - это библиотека C ++, которая позволяет легко чтение / запись данных JSON. , Этот пакет содержит необходимые инструменты разработки создавать приложения, использующие jsoncpp. Пакет: libjsoncpp Раздел: libs Архитектура: любая Зависит: $ {shlibs: Зависит}, $ {разное: Зависит} Описание: библиотека синтаксического анализа JSON для C ++ jsoncpp - это библиотека C ++, которая позволяет легко чтение / запись данных JSON.
Контрольный файл для второго (libsopp):
Источник: Сопп Приоритет: дополнительный Сопровождающий: Натан Осман Сборка-Зависит: debhelper (> = 7) Стандарты-Версия: 3.8.3 Раздел: libs Домашняя страница: http://stackoverflow.quickmediasolutions.com Пакет: sopp-dev Раздел: libdevel Архитектура: любая Зависит от: libsopp (= $ {binary: Version}), jsoncpp-dev Описание: библиотека C ++ для взаимодействия с сайтами StackExchange. so ++ - это библиотека C ++, которая объединяет функциональность StackOverflow API. Он предоставляет доступ ко всем сайтам StackExchange. , Этот пакет содержит файлы разработки, необходимые для написания программного обеспечения который использует так ++. Пакет: libsopp Раздел: libs Архитектура: любая Зависит: $ {shlibs: Зависит}, $ {misc: Зависит}, libjsoncpp Описание: библиотека C ++ для взаимодействия с сайтами StackExchange. so ++ - это библиотека C ++, которая объединяет функциональность StackOverflow API. Он предоставляет доступ ко всем сайтам StackExchange.
compiling
ppa
dependencies
Натан Осман
источник
источник
Ответы:
Ваш второй пакет (sopp) должен указать, что ему нужен первый для сборки ; указанная зависимость (с
Depends:
) будет обрабатывать только установку.Чтобы добавить зависимость сборки, добавьте это в
Source:
раздел top ( ) вашего управляющего файла:После этого вы сможете удалить jsoncpp со
Depends
строки, так какshlibs:Depends
макрос сам должен это решить.источник