Buildroot

Buildroot是一组Makefile和Patch文件，用来简化和自动化为嵌入式系统建造一个完整和可引导的Linux环境的过程，特别是在使用交叉编译来允许在单一的基于Linux的开发系统上为多个目标平台进行建造的时候。Buildroot可以自动建造所需要的交叉编译工具链，建立根文件系统，编译一个Linux内核映像，并为目标嵌入式系统生成引导装载器，它还可以进行这些独立步骤的任何组合。例如可以独立的使用已经安装好的交叉编译工具链，而只用Buildroot建立根文件系统。

介绍
Buildroot主要意图用于小型或嵌入式系统，它们基于各种计算机体系结构和指令集之上，包括x86、ARM、MIPS和PowerPC。不仅支持大量的架构及其变体，Buildroot还随带了针对一些现成的嵌入式开发板的缺省配置，比如Cubieboard、Raspberry Pi等。一些第三方项目和产品使用Buildroot作为其建造系统的基础，包括建立了嵌入式操作系统的OpenWrt计划，和Google Fiber宽带服务所用的用户驻地设备的固件。

支持多个C标准库作为工具链的一部分，包括GNU C函数库、uClibc和musl，当然还有属于各种预配置的开发环境的C标准库，比如Linaro所提供的库。Buildroot的建造配置系统内部使用了，它提供了一些特征，比如菜单驱动界面，依赖性处理，；Kconfig也被Linux内核用于自身的源代码层面配置。Buildroot围绕大量自动下载的软件包而进行组织，这包含了各种用户空间应用、系统实用工具和函数库的源代码。作为最终结果的根文件系统映像，可以使用各种文件系统建造，包括cramfs、JFFS2、romfs、SquashFS和UBIFS。

Buildroot是自由及开放源代码软件，由Peter Korsgaard维护并在GNU通用公共许可证（GPL）版本2及以后版本下发行。这个项目开始于2001年，最初意图用作uClibc的测试台。每三个月提供新的发行。

参见 

 BitBake
 BusyBox
 OpenEmbedded
 uClibc
 Yocto计划

引用

外部链接 
 
 Buildroot: What's new?, Embedded Linux Conference 2014, by Thomas Petazzoni
 Buildroot: A deep dive into the core, Embedded Linux Conference Europe 2014, by Thomas Petazzoni
 Deciding between Buildroot and Yocto, LWN.net, April 6, 2016, by Nathan Willis

自动化构建
嵌入式Linux
自由電腦程式設計工具