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)

Configuration fragments for Kconfig-based projects

The Kconfig configuration infrastructure has become popular due to its flexibility and expressiveness. Although it started with Linux kernel, some other projects use the same infrastructure, such as U-Boot and BusyBox.

The configuration is based on select-based features where you can enable or disable a feature and save the result of this choice in a file for later use. So please consider the following figure:

Figure 13.9 – Enable or disable TFTPD on BusyBox KConfig

Figure 13.9 – Enable or disable TFTPD on BusyBox KConfig

We have control whether the TFTPD support in BusyBox is enabled (a) or not (b).

The Yocto Project provides a specialized class to handle the configuration of the Kconfig-based project, allowing minor modifications called configuration fragments. We can use this to enable or disable features for your machine, for example, when configuring linux-yocto, we can use <layer>/recipes-kernel/linux/linux-yocto_%.bbappend as in the...