Book Image

Embedded Linux Development using Yocto Projects - Second Edition

By : Otavio Salvador, Daiane Angolini
Book Image

Embedded Linux Development using Yocto Projects - Second Edition

By: Otavio Salvador, Daiane Angolini

Overview of this book

Yocto Project is turning out to be the best integration framework for creating reliable embedded Linux projects. It has the edge over other frameworks because of its features such as less development time and improved reliability and robustness. Embedded Linux Development using Yocto Project starts with an in-depth explanation of all Yocto Project tools, to help you perform different Linux-based tasks. The book then moves on to in-depth explanations of Poky and BitBake. It also includes some practical use cases for building a Linux subsystem project using Yocto Project tools available for embedded Linux. The book also covers topics such as SDK, recipetool, and others. By the end of the book, you will have learned how to generate and run an image for real hardware boards and will have gained hands-on experience at building efficient Linux systems using Yocto Project.
Table of Contents (22 chapters)
Title Page
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
7
Diving into BitBake Metadata
Index

Constructing the build directory


Poky's inputs and outputs were already detailed at a highlevelofabstract in the previous chapters. We already know that BitBake uses metadata to generate different types of artifacts, including images. Besides the generated artifacts, BitBake creates much more content during this process, which may be used in several ways, dependent upon our goals.

During the build process, BitBake performs several tasks and continuously modifies the build directory. We can understand it better following the usual BitBake flow, as follows:

  • Fetching: The first action realized by BitBake is to download the source code. This step may modify the build directory as it tries to use the cached downloaded copy of the source code, or performs the download and stores it inside the build/download directory.
  • Source preparation: After fetching the source code is complete, it must be prepared for use. This may involve, for example, the unpacking of a tarball or a clone of a local cached Git...