Embedded Linux Development using Yocto Projects(Second Edition)
Otavio Salvador Daiane Angolini更新时间:2021-07-02 15:09:05
最新章节:Summarycoverpage
Title Page
Embedded Linux Development using Yocto Projects
Second Edition
Copyright
Embedded Linux Development using Yocto Projects
Second Edition
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Why subscribe?
Customer Feedback
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the color images of this book
Errata
Piracy
Questions
Meeting the Yocto Project
What is the Yocto Project?
Delineating the Yocto Project
Understanding Poky
Using BitBake
OpenEmbedded-Core
Metadata
The alliance of the OpenEmbedded Project and the Yocto Project
Summary
Baking Our Poky-Based System
Configuring a host system
Installing Poky on Debian
Installing Poky on Fedora
Downloading the Poky source code
Preparing the build environment
Knowing the local.conf file
Building a target image
Running images in QEMU
Summary
Using Toaster to Bake an Image
What is Toaster?
Installing Toaster
Starting Toaster
Building an image to QEMU
Summary
Grasping the BitBake Tool
Understanding the BitBake tool
Exploring metadata
Parsing metadata
Dependencies
Preferring and providing recipes
Fetching the source code
Remote file downloads
Git repositories
Optimizing the source code download
Disabling network access
Understanding BitBake's tasks
Extending tasks
Generating a root filesystem image
Summary
Detailing the Temporary Build Directory
Detailing the build directory
Constructing the build directory
Exploring the temporary build directory
Understanding the work directory
Understanding the sysroot directories
Summary
Assimilating Packaging Support
Using supported package formats
List of supported package formats
Choosing a package format
Running code during package installation
Understanding shared state cache
Explaining package versioning
Specifying runtime package dependencies
Package feeds
Using package feeds
Summary
Diving into BitBake Metadata
Using metadata
Working with metadata
The basic variable setting
Variable expansion
Setting a default value using ?=
Setting a default value using ??=
Immediate variable expansion
Appending and prepending
Override syntax operators
Conditional metadata set
Conditional appending
File inclusion
Python variable expansion
Defining executable metadata
Defining Python functions in the global namespace
The inheritance system
Summary
Developing with the Yocto Project
Deciphering the software development kit
Working with the Poky SDK
Using an image-based SDK
Generic SDK – meta-toolchain
Using an SDK
Developing applications on the target
Integrating with Eclipse
Summary
Debugging with the Yocto Project
Differentiating metadata and application debugging
Tracking image package and SDK contents
Debugging packaging
Logging information during task execution
Utilizing a development shell
Using the GNU Project Debugger for debugging
Summary
Exploring External Layers
Powering flexibility with layers
Detailing the layer's source code
Adding meta layers
The Yocto Project layer ecosystem
Summary
Creating Custom Layers
Making a new layer
Adding metadata to the layer
Creating an image
Adding a package recipe
Automatically creating a base package recipe using recipetool
Adding support to a new machine definition
Wrapping an image for your machine
Using a custom distribution
MACHINE_FEATURES versus DISTRO_FEATURES
Understanding the variables scope
Summary
Customizing Existing Recipes
Common use cases
Adding extra options to recipes based on Autoconf
Applying a patch
Adding extra files to the existing packages
Understanding file searching paths
Changing recipe feature configuration
Customizing BusyBox
Customizing the linux-yocto framework
Summary
Achieving GPL Compliance
Understanding copyleft
Copyleft compliance versus proprietary code
Some guidelines for license compliance
Managing software licensing with Poky
Commercial licenses
Using Poky to achieve copyleft compliance
License auditing
Providing the source code
Providing compilation scripts and source code modifications
Providing license text
Summary
Booting Our Custom Embedded Linux
Exploring the boards
Discovering the right BSP layer
Baking for the hardware
Baking for BeagleBone Black
Baking for Raspberry Pi 3
Baking for the Wandboard
Booting our baked image
Booting BeagleBone Black from the SD card
Booting Raspberry Pi 3 from the SD card
Booting Wandboard from the SD card
Next steps
Summary
更新时间:2021-07-02 15:09:05