Book Image

Embedded Linux Development Using Yocto Project - Third Edition

By : Otavio Salvador, Daiane Angolini
Book Image

Embedded Linux Development Using Yocto Project - Third Edition

By: Otavio Salvador, Daiane Angolini

Overview of this book

The Yocto Project is the industry standard for developing dependable embedded Linux projects. It stands out from other frameworks by offering time-efficient development with enhanced reliability and robustness. With Embedded Linux Development Using Yocto Project, you’ll acquire an understanding of Yocto Project tools, helping you perform different Linux-based tasks. You’ll gain a deep understanding of Poky and BitBake, explore practical use cases for building a Linux subsystem project, employ Yocto Project tools available for embedded Linux, and uncover the secrets of SDK, recipe tool, and others. This new edition is aligned with the latest long-term support release of the aforementioned technologies and introduces two new chapters, covering optimal emulation in QEMU for faster product development and best practices. By the end of this book, you’ll be well-equipped to generate and run an image for real hardware boards. You’ll gain hands-on experience in building efficient Linux systems using the Yocto Project.
Table of Contents (20 chapters)

Optimizing the source code download

To improve the robustness of source code download, Poky provides a mirror mechanism that can provide the following:

  • A centrally preferred server for download
  • A set of fallback servers

To provide this robust download mechanism, BitBake follows defined logic steps. During the build, the first BitBake step is to search for the source code within the local download directory (specified by DL_DIR). If this fails, the next step is to try the locations defined by the PREMIRRORS variable. Finally, BitBake searches the locations specified in the MIRRORS variable in a failure case. In summary, these steps are as follows:

  1. DL_DIR: Look for the download on the host machine.
  2. MIRRORS: Search for the download in a list of mirrors.
  3. PREMIRRORS: This is used to reduce the download from external servers and is usually used inside companies to reduce or forbid internet use.

For example, when configuring a local server, https...