Book Image

Embedded Linux Development Using Yocto Project Cookbook - Second Edition

By : Alex Gonzalez
Book Image

Embedded Linux Development Using Yocto Project Cookbook - Second Edition

By: Alex Gonzalez

Overview of this book

The Yocto Project has become the de facto distribution build framework for reliable and robust embedded systems with a reduced time to market.You'll get started by working on a build system where you set up Yocto, create a build directory, and learn how to debug it. Then, you'll explore everything about the BSP layer, from creating a custom layer to debugging device tree issues. In addition to this, you’ll learn how to add a new software layer, packages, data, scripts, and configuration files to your system. You will then cover topics based on application development, such as using the Software Development Kit and how to use the Yocto project in various development environments. Toward the end, you will learn how to debug, trace, and profile a running system. This second edition has been updated to include new content based on the latest Yocto release.
Table of Contents (13 chapters)
Title Page
Dedication
Packt Upsell
Foreword
Contributors
Preface
Index

Exploring an image's contents


We have already seen how to use the build history feature to obtain a list of packages and files included in our image. In this recipe, we will explain how the root filesystem is built so that we are able to track its components.

Getting ready

When packages are built, they are placed inside the working directory of your project, usually tmp/work, and classified according to their architecture. For example, on a wandboard build, we find the following directories:

  • all-poky-linux: This is used for architecture-independent packages
  • cortexa9hf-neon-poky-linux-gnueabi: This is used for cortexa9, hard floating point packages
  • cortexa9hf-neon-mx6qdl-poky-linux-gnueabi: This is used for cortexa9, hard floating point packages that are specific to the i.MX6 architecture
  • wandboard-poky-linux-gnueabi: This is used for machine-specific packages, in this case wandboard
  • x86_64-linux: This is used for the packages that form the host sysroot
  • x86_64-nativesdk-pokysdk-linux: This is used...