Buildroot
Buildroot是一組Makefile和Patch文件,用來簡化和自動化為嵌入式系統建造一個完整和可引導的Linux環境的過程,特別是在使用交叉編譯來允許在單一的基於Linux的開發系統上為多個目標平台進行建造的時候。Buildroot可以自動建造所需要的交叉編譯工具鏈,建立根文件系統,編譯一個Linux內核映像,並為目標嵌入式系統生成引導裝載器,它還可以進行這些獨立步驟的任何組合。例如可以獨立的使用已經安裝好的交叉編譯工具鏈,而只用Buildroot建立根文件系統[3][4][5][6]。
開發者 | Peter Korsgaard及其他人 |
---|---|
首次發布 | 2005年1月12日[1] |
當前版本 |
|
源代碼庫 | https://git.busybox.net/buildroot/ |
編程語言 | Make、shell和C |
操作系統 | Linux |
平台 | 嵌入式Linux |
類型 | 組建自動化 |
許可協議 | GNU GPL版本2及此後 |
網站 | www |
介紹
編輯Buildroot主要意圖用於小型或嵌入式系統,它們基於各種計算機體系結構和指令集之上,包括x86、ARM、MIPS和PowerPC[5]。不僅支持大量的架構及其變體,Buildroot還隨帶了針對一些現成的嵌入式開發板的缺省配置,比如Cubieboard(頁面存檔備份,存於網際網路檔案館)、Raspberry Pi等[7][8]。一些第三方項目和產品使用Buildroot作為其建造系統的基礎,包括建立了嵌入式操作系統的OpenWrt計劃,和Google Fiber寬帶服務所用的用戶駐地設備的固件[8][9]。
支持多個C標準庫作為工具鏈的一部分,包括GNU C函數庫、uClibc和musl,當然還有屬於各種預配置的開發環境的C標準庫,比如Linaro所提供的庫。Buildroot的建造配置系統內部使用了Kconfig,它提供了一些特徵,比如菜單驅動界面,依賴性處理,上下文有關幫助;Kconfig也被Linux內核用於自身的源代碼層面配置。Buildroot圍繞大量自動下載的軟件包而進行組織,這包含了各種用戶空間應用、系統實用工具和函數庫的源代碼。作為最終結果的根文件系統映像,可以使用各種文件系統建造,包括cramfs、JFFS2、romfs、SquashFS和UBIFS[4][8][10]。
Buildroot是自由及開放源代碼軟件,由Peter Korsgaard維護並在GNU通用公共許可證(GPL)版本2及以後版本下發行[4]。這個項目開始於2001年,最初意圖用作uClibc的測試台。每三個月提供新的發行[5][8]。
參見
編輯引用
編輯- ^ Old Buildroot downloads (index of /downloads/old). buildroot.org. [August 16, 2015]. (原始內容存檔於2016-03-04).
- ^ https://git.busybox.net/buildroot/plain/CHANGES; 出版日期: 2018年4月9日; 檢索日期: 2018年5月21日.
- ^ Alexander Sirotkin. Roll Your Own Embedded Linux System with Buildroot. Linux Journal. August 31, 2011 [December 18, 2014]. (原始內容存檔於2018-05-01).
- ^ 4.0 4.1 4.2 Buildroot: Making embedded Linux easy. buildroot.org. [December 18, 2014]. (原始內容存檔於2014-12-18).
- ^ 5.0 5.1 5.2 The Buildroot User Manual (PDF). buildroot.org. December 1, 2014 [December 18, 2014]. (原始內容存檔 (PDF)於2018-04-30).
- ^ Tom Parkin. Tools and distributions for embedded Linux development. LWN.net. April 27, 2010 [August 16, 2015]. (原始內容存檔於2018-04-30).
- ^ Buildroot's changelog (CHANGES file). git.buildroot.net. December 1, 2014 [December 18, 2014]. (原始內容存檔於2014-12-18).
- ^ 8.0 8.1 8.2 8.3 Peter Korsgaard. Buildroot: What's new? (PDF). elinux.org. October 26, 2013 [December 18, 2014]. (原始內容存檔 (PDF)於2016-11-07).
- ^ OpenWrt Buildroot – About. openwrt.org. December 6, 2014 [December 18, 2014]. (原始內容存檔於2018-04-16).
- ^ Linux4SAM: BuildRoot. at91.com. July 15, 2013 [August 16, 2015]. (原始內容存檔於2018-04-30).
外部連結
編輯- 官方網站
- 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