Дело в том, что есть ipk с именем A и еще один с именем B.
B имеет зависимость времени выполнения от A (согласно рецепту битового теста A)
Тем не менее, исходный файл в B имеет #include <some_header_in_A>
Для меня это похоже на зависимость сборки, но тогда я не могу объяснить себе, почему рецепт битбейка функционирует с зависимостью времени выполнения.
Любая помощь приветствуется, а также ссылка на некоторый пояснительный учебник.
Напомним мой ответ на другой вопрос.
Если T Зависит от п затем T«s do_configure
задача зависит
на п«s do_populate_sysroot
задача.
Если T Зависит от п затем T«s do_build
Задача Ia зависит от п«s
do_package_write
задача.
Так что тот факт, что ваш В RDEPENDS
на ваше Значит это имеет уже
прошел все этапы do_package_write
когда B
построен, в том числе
do_populate_sysroot
, Поэтому любые заголовки, которые экспорт в sysroot
уже будет там, когда В построен, и зависимость времени сборки будет удовлетворена.
Если В включает заголовки, экспортируемые , этот является это зависимость во время сборки. Но это
не исключает В также имеющий зависимость во время выполнения от . На самом деле это обычно
случай, если В зависит от времени выполнения тогда это также зависит от времени сборки
на , именно потому, что (для пакетов C / C ++) зависимость времени выполнения обычно
означает, что здание В нужны заголовки из .
Если ваш рецепт только определяет В RDEPENDS
на , тогда нужно чуть чуть
удачи, чтобы преуспеть. Если так получилось, что В«s do_configure
включена проверка на наличие заголовки, а также Все
зависимости в игре сделали возможным В«s do_configure
бежать раньше «s do_populate_sysroot
было закончено, то что то
проверить на Заголовки могут потерпеть неудачу.
Чтобы рецепт был полностью правильным и безопасным, в нем должны быть указаны
тот В RDEPENDS
на а также тот В DEPENDS
на .