BitBake Ur Manual
BitBake Team
Copyright © 2004, 2005, 2006 Chris Larson, Phil Blundell
This work is licend under the Creative Commons Attribution Licen. To view a copy of this licen, visit
creativecommons/licens/by/2.5/or nd a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Table of Contents
1.Introduction
介绍
Overview
概览
Background and Goals
背景和目标
2.Metadata
Metadata
Description
描述
Basic variable tting
基础变量设置
Variable expansion
变量扩展
Setting a default value (?=)
设置一个默认值(?=)
Setting a default value (??=)
设置一个默认值(??=)
Immediate variable expansion (:=)
直接变量扩展(:=)
Appending (+=) and prepending (=+)
附加(+=)和预附加(=+)
Appending (.=) and prepending (=.) without spaces
没有空间的附加(.=)和预附加(=.)
Conditional metadata t
条件metadata集
Conditional appending
开盘活动
条件附加
Inclusion
纳入
Requiring Inclusion
请求纳入
周里Python variable expansion
Python变量扩展
Defining executable metadata
定义可执行metadata
Defining python functions into the global python namespace 定义python函数到全局命名空间
Variable Flags
可变标识
Inheritance
继承权
Tasks
任务
Events
事件
Variants
变种
Dependency Handling
依赖处理
Dependencies internal to the .bb file
内部依赖的.bb文件
DEPENDS
DEPENDS
RDEPENDS
RDEPENDS
Recursive DEPENDS
递归DEPENDS
Recursive RDEPENDS
递归RDEPENDS
Inter Task
内部任务
Parsing
解析
Configuration Files
配置文件
Class
类
.bb Files
.bb文件
3.File Download support
文件下载支持
Overview
概览
Local File Fetcher
从本地文件获取
CVS File Fetcher
从CVS文件获取游戏英语怎么读
HTTP/FTP Fetcher
从HTTP/FTP协议获取
SVK Fetcher
从SVK获取
SVN Fetcher
从SVN获取
GIT Fetcher
从GIT获取
4.The bitbake command
Bitbake命令
Introduction
介绍
Usage and Syntax
使用和语法
Special variables
特殊变量
BB_NUMBER_THREADS
BB_NUMBER_THREAD
Metadata
Metadata人事部门工作职责
List of Examples
例子列表
4.1.Executing a task against a single .bb
4.2. Executing tasks against a t of .bb files 4.3. Generating dependency graphs
4.4. Setting BBFILES
4.5. Depending on another .bb
小学体育教案4.6. Using PROVIDES
4.7. Specifying version preference
4.8. Using “bbfile collections”
Chapter 1. Introduction
Table of Contents
Overview
Background and Goals
Overview
短发女生简笔画BitBake is, at its simplest, a tool for executing tasks and managing metadata. As such, its similarities to GNU make and other build tools are readily apparent. It was inspired by Portage, the package management system ud by the Gentoo Linux distribution. BitBake is the basis of the OpenEmbedded project, which is being ud to build and maintain a number of embedded Linux distributions, including OpenZaurus and Familiar.
Background and Goals
Prior to BitBake, no other build tool adequately met the needs of an aspiring embedded Linux distribution. All of the buildsystems ud by traditional desktop Linux distributions lacked important functionality, and none of the ad-hoc buildroot systems, prevalent in the embedded space, were scalable or maintainable.
Some important goals for BitBake were:
∙Handle crosscompilation.
∙Handle interpackage dependencies (build time on target architecture, build time on native architecture, and runtime).
∙Support running any number of tasks within a given package, including, but not limited to, fetching upstream sources, unpacking them, patching them, configuring them, et cetera.
∙Must be linux distribution agnostic (both build and target).
∙Must be architecture agnostic
∙Must support multiple build and target operating systems (including cygwin, the BSDs, etc).
∙Must be able to be lf contained, rather than tightly integrated into the build machine's root filesystem.
∙There must be a way to handle conditional metadata (on target architecture, operating system, distribution, machine).
∙It must be easy for the person using the tools to supply their own local metadata and packages to operate against.
∙Must make it easy to collaborate between multiple projects using BitBake for their builds.
∙Should provide an inheritance mechanism to share common metadata between many packages.
∙
BitBake satisfies all the and many more. Flexibility and power have always been the priorities. It is highly extensible, supporting embedded Python code and execution of any arbitrary tasks.
Chapter 2. Metadata
Table of Contents
Description
Basic variable tting
Variable expansion
Setting a default value (?=)
Setting a default value (??=)
Immediate variable expansion (:=)
Appending (+=) and prepending (=+)
Appending (.=) and prepending (=.) without spaces
Conditional metadata t
Conditional appending
Inclusion
Requiring Inclusion
Python variable expansion
Defining executable metadata
Defining python functions into the global python namespace
Variable Flags
香港xxxInheritance
Tasks
Events
Variants
Dependency Handling
Dependencies internal to the .bb file
DEPENDS
RDEPENDS
Recursive DEPENDS
Recursive RDEPENDS
Inter Task
Parsing
Configuration Files
Class
.bb Files雍正妃嫔
Description
BitBake metadata can be classified into 3 major areas: