Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Embedded Linux Development Using Yocto Project - Third Edition
Embedded Linux Development Using Yocto Project - Third Edition

Embedded Linux Development Using Yocto Project: Leverage the power of the Yocto Project to build efficient Linux-based products, Third Edition

By Otavio Salvador , Daiane Angolini
R$222.99 R$80.00
Book Apr 2023 196 pages 3rd Edition
eBook
R$222.99 R$80.00
Print
R$278.99
Subscription
Free Trial
eBook
R$222.99 R$80.00
Print
R$278.99
Subscription
Free Trial

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Buy Now

Product Details


Publication date : Apr 28, 2023
Length 196 pages
Edition : 3rd Edition
Language : English
ISBN-13 : 9781804615065
Category :
Table of content icon View table of contents Preview book icon Preview Book

Embedded Linux Development Using Yocto Project - Third Edition

Meeting the Yocto Project

This chapter introduces you to the Yocto Project. The main concepts of the project discussed here are constantly used throughout the book. In addition, we will briefly discuss the history of the Yocto Project, OpenEmbedded, Poky, BitBake, metadata, and versioning schema. So, fasten your seat belt, and welcome aboard!

What is the Yocto Project?

The Yocto Project is a Linux Foundation workgroup and is defined as follows:

The Yocto Project is an open source collaboration project that helps developers create custom Linux-based systems that are designed for embedded products regardless of the product’s hardware architecture. Yocto Project provides a flexible toolset and a development environment that allows embedded device developers across the world to collaborate through shared technologies, software stacks, configurations, and best practices used to create these tailored Linux images.

Thousands of developers worldwide have discovered that Yocto Project provides advantages in both systems and applications development, archival and management benefits, and customizations used for speed, footprint, and memory utilization. The project is a standard when it comes to delivering embedded software stacks. The project allows software customizations and build interchange for multiple hardware...

Delineating the Yocto Project

To ease our understanding of the duties and outcomes of the Yocto Project, we can use the analogy of a computing machine. The input is a set of data that describes what we want, that is, our specification. As an output, we have the desired Linux-based embedded product.

The output is composed of the pieces of the operating system. It encompasses the Linux kernel, bootloader, and the root filesystem (rootfs) bundled and organized to work together.

The Yocto Project’s tools are present in all intermediary steps to produce the resultant rootfs bundle and other deliverables. The previously built software components are reused across builds – applications, libraries, or any software component.

When reuse is not possible, the software components are built in the correct order and with the desired configuration, including fetching the required source code from their respective repositories, such as The Linux Kernel Archives (www.kernel.org...

The alliance of the OpenEmbedded project and the Yocto Project

The OpenEmbedded project was created around January 2003 when some core developers from the OpenZaurus project started to work with the new build system. Since its beginning, the OpenEmbedded build system has been a task scheduler inspired and based on the Gentoo Portage package system named BitBake. As a result, the project quickly grew its software collection and the supported machine list.

Due to chaotic and uncoordinated development, it was challenging to use OpenEmbedded in products that demand a more stable and polished code base, which is how Poky distribution was born. Poky started as a subset of the OpenEmbedded build system, and had a more polished and stable code base across a limited set of architectures. Additionally, its reduced size allowed Poky to develop highlighting technologies, such as IDE plugins and Quick Emulator (QEMU) integration, which are still in use.

The Yocto Project and OpenEmbedded...

Understanding Poky

Poky is the default Yocto Project reference distribution, which uses OpenEmbedded build system technology. It is composed of a collection of tools, configuration files, and recipe data (known as metadata). It is platform-independent and performs cross-compiling using the BitBake tool, OpenEmbedded Core, and a default set of metadata, as shown in the following figure. In addition, it provides the mechanism to build and combine thousands of distributed open source projects to form a fully customizable, complete, and coherent Linux software stack.

Poky’s main objective is to provide all the features an embedded developer needs.

Figure 1.1 – Poky main components

Figure 1.1 – Poky main components

BitBake

BitBake is a task scheduler and execution system that parses Python and Shell Script code. The code that is parsed generates and runs tasks, which are a set of steps ordered per the code’s dependencies.

BitBake evaluates all available metadata...

The Yocto Project releases

The Yocto Project has a release every six months, in April and October. This release cycle ensures continuous development flow while providing points of increased testing and focus on stability. A release becomes a Stable or a Long-Term Support (LTS) release whenever a release is ready.

The support period differs significantly between the stable and LTS releases. The support for the stable release is for 7 months, offering 1 month of overlapped support for every stable release. The LTS release has a minimal support period of 2 years, optionally extended. After the official support period ends, it moves to Community support and finally reaches End Of Life (EOL).

When the official release support period ends, a release can be Community support if a community member steps in to become the community maintainer. Finally, a release turns EOL when there is no change in the source code by 2 months, or the community maintainer is no longer an active member.

...

Summary

This chapter provided an overview of how the OpenEmbedded project is related to the Yocto Project, the components that form Poky, and how the project began. The next chapter will introduce the Poky workflow with steps to download, configure, and prepare the Poky build environment and how to have the first image built and running using QEMU.

Left arrow icon Right arrow icon

Key benefits

  • Optimize your Yocto Project tools to develop efficient Linux-based projects
  • Follow a practical approach to learning Linux development using Yocto Project
  • Employ the best practices for embedded Linux and Yocto Project development

Description

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.

What you will learn

Understand the basic Poky workflows concepts along with configuring and preparing the Poky build environment Learn with the help of up-to-date examples in the latest version of Yocto Project Configure a build server and customize images using Toaster Generate images and fit packages into created images using BitBake Support the development process by setting up and using Package feeds Debug Yocto Project by configuring Poky Build an image for the BeagleBone Black, RaspberryPi 4, and Wandboard, and boot it from an SD card

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Buy Now

Product Details


Publication date : Apr 28, 2023
Length 196 pages
Edition : 3rd Edition
Language : English
ISBN-13 : 9781804615065
Category :

Table of Contents

20 Chapters
Preface Chevron down icon Chevron up icon
Chapter 1: Meeting the Yocto Project Chevron down icon Chevron up icon
Chapter 2: Baking Our First Poky-Based System Chevron down icon Chevron up icon
Chapter 3: Using Toaster to Bake an Image Chevron down icon Chevron up icon
Chapter 4: Meeting the BitBake Tool Chevron down icon Chevron up icon
Chapter 5: Grasping the BitBake Tool Chevron down icon Chevron up icon
Chapter 6: Detailing the Temporary Build Directory Chevron down icon Chevron up icon
Chapter 7: Assimilating Packaging Support Chevron down icon Chevron up icon
Chapter 8: Diving into BitBake Metadata Chevron down icon Chevron up icon
Chapter 9: Developing with the Yocto Project Chevron down icon Chevron up icon
Chapter 10: Debugging with the Yocto Project Chevron down icon Chevron up icon
Chapter 11: Exploring External Layers Chevron down icon Chevron up icon
Chapter 12: Creating Custom Layers Chevron down icon Chevron up icon
Chapter 13: Customizing Existing Recipes Chevron down icon Chevron up icon
Chapter 14: Achieving GPL Compliance Chevron down icon Chevron up icon
Chapter 15: Booting Our Custom Embedded Linux Chevron down icon Chevron up icon
Chapter 16: Speeding Up Product Development through Emulation – QEMU Chevron down icon Chevron up icon
Chapter 17: Best Practices Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Filter icon Filter
Top Reviews
Rating distribution
Empty star icon Empty star icon Empty star icon Empty star icon Empty star icon 0
(0 Ratings)
5 star 0%
4 star 0%
3 star 0%
2 star 0%
1 star 0%

Filter reviews by


No reviews found
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.