Afin de satisfaire les dépendances, les recettes doivent déclarer ce dont elles ont besoin pendant le processus de construction. Lorsqu'une application dépend de quelque chose à exécuter, on parle de dépendance d'exécution (il s'agit de packages nécessaires sur la cible afin de garantir son bon fonctionnement). Dans ce cas, nous n'avons pas besoin de définir la variable DEPENDS mais la variable RDEPENDS dans une recette afin d'informer BitBake. Bref,
DEPENDS -> Build Time Dependency RDEPENDS -> Run Time Dependency
ÇA DÉPEND :Lorsqu'une recette « A » est DÉPEND de la recette « B ». Dans ce cas, Bitbake construit d'abord la recette "B" puis la recette "A". Par exemple, vous avez besoin que "dbus" soit compilé avant "wpa_supplicant".
RÉPEND :Lorsqu'une recette 'A' est RDEPENDS sur la recette 'B'. Dans ce cas, Bitbake déploie « B » sur le système cible lorsqu'il déploie « A ». Par exemple, 'perf' RDEPENDS sur 'bash'
En d'autres termes, DEPENDS sont les ensembles de packages qui doivent être disponibles lors de la construction du package, tandis que RDEPENDS sont les ensembles de packages qui doivent être disponibles lors de l'exécution du programme.
Dépendances au moment de la construction
BitBake utilise la variable DEPENDS pour gérer les dépendances au moment de la construction. Le varflag deptask pour une tâche signifie la tâche qui doit être terminée pour chaque élément dans DEPENDS avant que cette tâche puisse être exécutée.
Dépendances d'exécution
BitBake utilise les variables PACKAGES et RDEPENDS pour gérer les dépendances d'exécution. La variable PACKAGES répertorie tous les packages d'exécution créés par une recette. Chacun de ces packages peut avoir des dépendances d'exécution RDEPENDS. Ce sont des packages qui doivent être installés pour qu'un package donné s'exécute. Le varflag rdeptask pour une tâche spécifie quelles tâches doivent être terminées pour chaque dépendance d'exécution avant que cette tâche puisse être exécutée