Buildroot是一组Makefile和Patch文件,用来简化和自动化为嵌入式系统建造一个完整和可引导的Linux环境的过程,特别是在使用交叉编译来允许在单一的基于Linux的开发系统上为多个目标平台进行建造的时候。Buildroot可以自动建造所需要的交叉编译工具链,建立根文件系统,编译一个Linux内核映像,并为目标嵌入式系统生成引导装载器,它还可以进行这些独立步骤的任何组合。例如可以独立的使用已经安装好的交叉编译工具链,而只用Buildroot建立根文件系统。
介绍
Buildroot主要意图用于小型或嵌入式系统,它们基于各种计算机体系结构和指令集之上,包括x86、ARM、MIPS和PowerPC。一些第三方项目和产品使用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计划
引用
外部链接
*
- [http://elinux.org/images/1/1d/Petazzoni-buildroot-whats-new.pdf Buildroot: What's new?], Embedded Linux Conference 2014, by Thomas Petazzoni
- [https://web.archive.org/web/20151010080158/http://events.linuxfoundation.org/sites/events/files/slides/petazzoni-dive-into-buildroot-core.pdf Buildroot: A deep dive into the core], Embedded Linux Conference Europe 2014, by Thomas Petazzoni
- [https://lwn.net/Articles/682540/ Deciding between Buildroot and Yocto], LWN.net, April 6, 2016, by Nathan Willis
评论 (0)