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

Using the extensible SDK


In previous chapters, we have already been using the standard SDK to build the U-Boot bootloader and the Linux kernel, so in this recipe we will focus on the extensible SDK and in particular in using devtool, a command-line tool that helps in the development of packages. The devtool utility supports a wide range of recipe types and build systems, including:

  • Autotools
  • CMake
  • SCons
  • qmake
  • GNU Make (Makefile)
  • Out-of-tree kernel module
  • Binary package
  • Node.js
  • Python setuptools or distutils

We will see examples of some of the above in the rest of this chapter.

Getting ready

We will need to build and install the extensible SDK as we have seen in the previous recipe so that the devtool command-line application is available. To build the full extensible SDK we do the following:

$ bitbake -c populate_sdk_ext <image name>

Depending on the chosen image, it may happen that the size of the full SDK is too big to manage. In that case, we can configure our build to use the minimal extensible...