Per soddisfare le dipendenze, le ricette devono dichiarare ciò che devono avere a disposizione durante il processo di compilazione. Quando un'applicazione dipende da qualcosa da eseguire, viene chiamata dipendenza di runtime (si tratta di pacchetti necessari sulla destinazione per garantire il corretto funzionamento). In questo caso, non è necessario impostare la variabile DEPENDS ma la variabile RDEPENDS in una ricetta per informare BitBake. Quindi, in poche parole,
DEPENDS -> Build Time Dependency RDEPENDS -> Run Time Dependency
DIPENDE :Quando una ricetta 'A' DIPENDE dalla ricetta 'B'. In questo caso, Bitbake costruisce prima la ricetta "B" e poi la ricetta "A". Ad esempio, devi compilare "dbus" prima di "wpa_supplicant".
RDEPENDS :Quando una ricetta 'A' dipende dalla ricetta 'B'. In questo caso, Bitbake distribuisce "B" sul sistema di destinazione quando distribuisce "A". Ad esempio, "perf" RDEPENDS su "bash"
In altre parole, DEPENDS sono gli insiemi di pacchetti che dovrebbero essere disponibili durante la creazione del pacchetto, mentre RDEPENDS sono gli insiemi di pacchetti che dovrebbero essere disponibili durante l'esecuzione del programma.
Dipendenze in fase di compilazione
BitBake usa la variabile DEPENDS per gestire le dipendenze in fase di compilazione. Il deptask varflag per un'attività indica l'attività che deve essere completata per ogni elemento in DEPENDS prima che tale attività possa essere eseguita.
Dipendenze di runtime
BitBake utilizza le variabili PACKAGES e RDEPENDS per gestire le dipendenze di runtime. La variabile PACKAGES elenca tutti i pacchetti di runtime creati da una ricetta. Ciascuno di questi pacchetti può avere dipendenze di runtime RDEPENDS. Questi sono i pacchetti che devono essere installati per l'esecuzione di un determinato pacchetto. Il rdeptask varflag per un'attività specifica quali attività devono essere completate per ogni dipendenza di runtime prima che tale attività possa essere eseguita