依存関係を満たすために、レシピは、ビルド プロセス中に利用可能にする必要があるものを宣言する必要があります。アプリケーションが実行するものに依存する場合、それはランタイム依存関係と呼ばれます (これらは、適切な機能を保証するためにターゲットで必要なパッケージです)。この場合、DEPENDS 変数を設定する必要はありませんが、BitBake に通知するためにレシピで RDEPENDS 変数を設定する必要があります。つまり、一言で言えば、
DEPENDS -> Build Time Dependency RDEPENDS -> Run Time Dependency
場合による :レシピ「A」がレシピ「B」に依存している場合。この場合、Bitbake は最初にレシピ「B」をビルドし、次にレシピ「A」をビルドします。たとえば、「wpa_supplicant」の前に「dbus」をビルドする必要があります。
RDEPENDS :レシピ「A」がレシピ「B」で RDEPENDS の場合。この場合、Bitbake は「A」をデプロイするときに「B」をターゲット システムにデプロイします。たとえば、「bash」の「perf」RDEPENDS
つまり、DEPENDS はパッケージのビルド中に使用できるパッケージのセットであり、RDEPENDS はプログラムの実行中に使用できるパッケージのセットです。
ビルド時の依存関係
BitBake は DEPENDS 変数を使用して、ビルド時の依存関係を管理します。タスクの deptask varflag は、そのタスクを実行する前に DEPENDS 内の各項目を完了する必要があるタスクを示します。
ランタイムの依存関係
BitBake は、PACKAGES および RDEPENDS 変数を使用して、実行時の依存関係を管理します。 PACKAGES 変数は、レシピが作成するすべてのランタイム パッケージを一覧表示します。これらの各パッケージは、RDEPENDS ランタイム依存関係を持つことができます。これらは、特定のパッケージを実行するためにインストールする必要があるパッケージです。タスクの rdeptask varflag は、そのタスクを実行する前に、実行時の依存関係ごとにどのタスクを完了する必要があるかを指定します