Ответ 1
Как вы говорите, битбаке занимается созданием и развертыванием пакетов, и ему необходимо развернуть все пакеты, необходимые для удовлетворения зависимостей времени выполнения от целевой системы.
Если ваш рецепт говорит, что цель T DEPENDS
на целевой P, которая сообщает битбаке, что он должен построить P до T, потому что T не может быть построен без P.
Если в вашем рецепте указано, что T RDEPENDS
на P, это говорит Bitbake, что он должен развернуть P в целевой системе, если он разворачивает T, потому что T не может использоваться без P.
Например, вы не можете создавать tar
без компилятора C, но вам не нужен компилятор C для использования tar
. Вы можете развернуть tar
без развертывания компилятора C. Так что DEPEND
.
С другой стороны, вы не можете использовать tar
без библиотеки времени выполнения. Если развертывается tar
, необходимо также запустить библиотеку времени выполнения C. Так что RDEPEND
.
Биты:
-
Если T
DEPENDS
на P, то Tdo_configure
для зависимости от задачи Pdo_populate_sysroot
. -
Если T
RDEPENDS
на P, то Tdo_build
задачу, зависящую от задачи pdo_package_write
.