BitBake User Manual
Table of Contents
- 1 Overview
- 1.1 Introduction
- 1.2 History and Goals
- 1.3 Concepts
- 1.4 Obtaining BitBake
- 1.5 The BitBake Command
- 1.5.1 Usage and syntax
- 1.5.2 Examples
- 1.5.2.1 Executing a Task Against a Single Recipe
- 1.5.2.2 Executing Tasks Against a Set of Recipe Files
- 1.5.2.3 Executing a List of Task and Recipe Combinations
- 1.5.2.4 Generating Dependency Graphs
- 1.5.2.5 Executing a Multiple Configuration Build
- 1.5.2.6 Enabling Multiple Configuration Build Dependencies
- 2 Execution
- 3 Setting Up The Environment With bitbake-setup
- 4 BitBake Terms
- 5 Syntax and Operators
- 5.1 Basic Syntax
- 5.1.1 Basic Variable Setting
- 5.1.2 Modifying Existing Variables
- 5.1.3 Line Joining
- 5.1.4 Variable Expansion
- 5.1.5 Immediate variable expansion (:=)
- 5.1.6 Setting a default value (?=)
- 5.1.7 Setting a weak default value (??=)
- 5.1.8 Appending (+=) and prepending (=+) With Spaces
- 5.1.9 Appending (.=) and Prepending (=.) Without Spaces
- 5.1.10 Appending and Prepending (Override Style Syntax)
- 5.1.11 Removal (Override Style Syntax)
- 5.1.12 Override Style Operation Advantages
- 5.1.13 Variable Flag Syntax
- 5.1.14 Inline Python Variable Expansion
- 5.1.15 Unsetting variables
- 5.1.16 Providing Pathnames
- 5.2 Exporting Variables to the Environment
- 5.3 Conditional Syntax (Overrides)
- 5.4 Sharing Functionality
- 5.5 Functions
- 5.6 Tasks
- 5.7 Variable Flags
- 5.8 Events
- 5.9 Variants — Class Extension Mechanism
- 5.10 Dependencies
- 5.11 Functions You Can Call From Within Python
- 5.12 Task Checksums and Setscene
- 5.13 Wildcard Support in Variables
- 5.1 Basic Syntax
- 6 Variable Context
- 7 File Download Support
- 7.1 The Download (Fetch)
- 7.2 The Unpack
- 7.3 The Non-Destructive Update (
unpack_update) - 7.4 Fetchers
- 7.4.1 Local file fetcher (
file://) - 7.4.2 HTTP/FTP wget fetcher (
http://,ftp://,https://) - 7.4.3 Subversion (SVN) Fetcher (
svn://) - 7.4.4 Git Fetcher (
git://) - 7.4.5 Git Submodule Fetcher (
gitsm://) - 7.4.6 ClearCase Fetcher (
ccrc://) - 7.4.7 Perforce Fetcher (
p4://) - 7.4.8 Repo Fetcher (
repo://) - 7.4.9 Az Fetcher (
az://) - 7.4.10 GCP Fetcher (
gs://) - 7.4.11 Crate Fetcher (
crate://) - 7.4.12 NPM Fetcher (
npm://) - 7.4.13 NPM shrinkwrap Fetcher (
npmsw://) - 7.4.14 Other Fetchers
- 7.4.1 Local file fetcher (
- 7.5 Auto Revisions
- 7.6 Multiple Source Control Repositories
- 8 Variables Glossary
- 9 Library Functions
- 9.1 Logging utilities
- 9.2
bb.build - 9.3
bb.utilsapproved_variables()break_hardlinks()build_environment()check_system_locale()clean_environment()contains()contains_any()copyfile()disable_network()edit_bblayers_conf()edit_metadata()edit_metadata_file()empty_environment()environment()exec_flat_python_func()explode_dep_versions()explode_dep_versions2()explode_deps()fileslocked()filter()filter_environment()filter_string()get_file_layer()get_referenced_vars()goh1_file()is_local_uid()is_path_on_nfs()is_semver()join_deps()landlock_restrict_network()lockfile()md5_file()mkdirhier()mkstemp()movefile()path_is_descendant()preserved_envvars()preserved_envvars_exported()profile_function()prune_suffix()prunedir()remove()sha1_file()sha256_file()sha384_file()sha512_file()signal_on_parent_exit()split_version()to_boolean()to_filemode()umask()unlockfile()vercmp_string()vercmp_string_op()which()
- 10 Hello World Example
BitBake Community
Copyright © 2004-2026, Richard Purdie, Chris Larson, and Phil Blundell
This work is licensed under the Creative Commons Attribution License. To view a copy of this license, visit http://creativecommons.org/licenses/by/2.5/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California 94041, USA.