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 (7 chapters)

Preparing an SDK


The Yocto build system can be used to generate a cross-compilation toolchain with a matching sysroot for a target system, as well as a sysroot with native applications. This is referred to as a standard Yocto Project SDK. The Yocto Project can also build an extensible SDK that extends the standard SDK by adding tools to facilitate adding new applications and libraries. This recipe will show how to build both types of SDK.

Getting ready

The standard SDK contains the cross-compilation toolchain, including the debugger as well as target and host sysroots. Its size depends on the image it is built to match, but is usually hundreds of MB. The extensible SDK comes in two flavors, full (the default) and minimal, and it allows for a certain degree of customization as well as being updatable.

  • The full extensible SDK includes the following:
    • Toolchain
    • Complete shared state cache artifacts and everything needed to recreate the images it is built against
    • The devtool command-line application...