Embedded Linux Development with Yocto Project (LFD460)
- Description
- Reviews
EMBEDDED LINUX DEVELOPMENT WITH YOCTO PROJECT (LFD460)
COURSE DESCRIPTION
In this instructor-led course, you’ll obtain a solid understanding of how to build a repeatable embedded Linux target using the Yocto Project. In addition to learning the build system, you will learn about more advanced tools like toaster, devtool, wic, eSDK, and eclipse IDE integration.
LEARNING OBJECTIVES
This course builds on the Embedded Linux topics learned in the LFD450 class. In this Yocto training course you will learn how to use the Poky and Bitbake build process, with its recipes and layers to customize Linux kernel and packages for a custom embedded application, how to build Linux on an embedded board, how to use emulators for verification, how to create board support packages (BSP) for target hardware, and more.
COURSE OUTLINE
- Introduction
- Objectives
- Goals
- Audience
- Who You Are
- The Linux Foundation
- Copyright and No Confidential Information
- Linux Foundation Training
- Certification Programs and Digital Badging
- Linux Distributions
- Platforms
- Preparing Your System
- Things Change in Linux and Open Source Projects
- Documentation and Link
- Preliminaries
- Linux Distributions
- Procedures
- Labs
- How to Work in OSS Projects
- Overview on How to Contribute Properly
- Know Where the Code is Coming From: DCO and CLA
- Stay Close to Mainline for Security and Quality
- Study and Understand the Project DNA
- Figure Out What Itch You Want to Scratch
- Identify Maintainers and Their Work Flows and Methods
- Get Early Input and Work in the Open
- Contribute Incremental Bits, Not Large Code Dumps
- Leave Your Ego at the Door: Don’t Be Thin-Skinned
- Be Patient, Develop Long Term Relationships, Be Helpful
- The Yocto Project and OpenEmbedded
- What is the Yocto Project?
- What is OpenEmbedded?
- The Yocto Project Family
- Yocto Project Terms
- Yocto Project Releases
- Resources
- Poky
- Pronouncing Poky
- Poky and BitBake Concepts
- Yocto/OE Architecture
- BitBake
- Obtaining and Installing
- Metadata
- Metadata Layers
- Metadata Syntax
- Events
- Variants
- File Downloads
- Fetchers
- Built-in Default Metadata
- Checksums
- Event Implementation
- Tasks
- Project Layout
- Provisioning and Dependency Handling
- BitBake Command Line
- Labs
- Setting Up the Yocto Project Build System
- The Yocto Project Reference System Structure
- A. Poky Core Components
- B. OpenEmbedded-Core Metadata Layer
- C. Poky Metadata Layer
- D. Yocto Board Support Package (BSP) Layer
- Labs
- Building an x86 Emulation Image
- Build Environment Structure
- Labs
- Troubleshooting Build Failures
- When Things Break
- Task Logs
- Running Specific Tasks
- Debug Statements
- Dependency Graphs
- Displaying Variables and Metadata
- Bitbake Debug Output
- Developer Shell
- Customizing Images
- Extending a Pre-defined Image
- Inheriting from Core-Image
- Package Groups
- Using Image Features
- Labs
- Toaster
- What is Toaster?
- Dependencies and Set Up of Toaster
- Running Toaster (local)
- Remote or hosted Setup Adding Packages – Recipe Conventions and Best Practices
- Single C-File Package
- Makefile-based Package
- Autotooled Package
- Labs
- Layers
- Why Layers?
- Working with Layers
- Labs
- Kernel Recipes
- Yocto Kernel Recipes
- Configuring the Yocto Project Kernel
- Building a Custom Kernel
- Extending the Yocto Project Kernel
- Labs
- Introduction to selected BBClasses
- rm work.bbclass
- allarch.bbclass
- buildhistory and buildstats
- cve-check.bbclass
- archiver.bbclass
- Development Tools
- devtool
- wic
- Licensing and Compliance
- License Management with Yocto
- License Tracking
- Enabling Commercially Licensed Recipes
- Labs
-
Closing and Evaluation Survey
-
Evaluation Survey
-
- Kbuild System
- Introduction
- Kbuild Makefiles
- Kconfig Basics
- Searching Kconfig
- Cross-Development Toolchain
- The Compiler Triplet
- Built-in Linux Distribution Cross Compiler
- Linaro
- CodeSourcery
- crosstool-ng
- Buildroot
- OpenEmbedded
- Yocto Project
- Labs
- Booting a Target Development Board oer Ethernet
- Using virtual Hardware
- An easier way to develop
- The Boot Sequence using TFTP and NFSroot
- Objectives of the Lab
- Labs
- Target Filesystem Packaging
- Embedded Filesystem Goals
- Directories: a Survey
- Embedded Filesystem Types
- Root Filesystem Choices
- SysV init vs. BusyBox init
- udev vs. BusyBox mdev
- Systemd
- C Library Choices
- Labs
- Right Sizing
- Oft-Needed Embedded Components
- Taking Inventory of Kernel Sizes
Please contact us for the schedules and for booking a private class.
Popular Courses
Archive
Working hours
Monday | 9:00 am - 6.00 pm |
Tuesday | 9:00 am - 6.00 pm |
Wednesday | 9:00 am - 6.00 pm |
Thursday | 9:00 am - 6.00 pm |
Friday | 9:00 am - 6.00 pm |
Saturday | Closed |
Sunday | Closed |