Dependencies
From the BitBake point of view, there are three different dependency types:
- Build time
- Execution time
- Tasks
An application that needs some other package, such as a library, has a build dependency for a successful compilation. Build dependencies include compilers. libraries, and native build tools (such as CMake). In addition, a build dependency has an execution dependency whenever an application is needed only during execution time. Runtime dependencies include fonts, icons, dynamically opened libraries, and language interpreters.
Tip
The convention inside Poky is to use -native
suffixes for recipe names. This is because those tools are aimed to be run during the build process, in the host building system, and are not deployed into the target.
The task dependencies create order in the chaos of task execution – for example, to compile a package, the source code needs to be downloaded. Under the hood, all the dependencies are task dependencies...