Buildroot Explained

Buildroot
Buildroot
Logo Size:120px
Logo Alt:A yellow hardhat, similar to those used by construction workers
Developer:Peter Korsgaard and others
Released:[1]
Latest Release Version:2024.05.9[2]
Programming Language:Make, shell and C
Operating System:Linux
Platform:Embedded Linux
Genre:Build automation
License:GNU GPL version 2 or later

Buildroot is a set of Makefile and patch files that automates the process of building Linux-based system software for an embedded system, including cross-compiling to a target platform that differs from the build system. Buildroot can build a cross-compilation toolchain, a root file system, a Linux kernel image, and a boot loader.[3] [4] [5] [6]

Buildroot supports multiple computer and instruction set architectures including x86, ARM, MIPS, PowerPC and RISC-V.[7] Buildroot comes with configurations for several off-the-shelf embedded boards, such as Cubieboard, Raspberry Pi and SheevaPlug.[8] [9] Several third-party projects and products use Buildroot as the basis for their build systems, including the OpenWrt project that creates an embedded operating system, and firmware for the customer-premises equipment (CPE) used by the Google Fiber broadband service.[10]

Multiple C standard library variants are supported, including the GNU C Library, uClibc and musl, as well as those belonging to various preconfigured development environments, such as Linaro. Buildroot's build configuration system internally uses Kconfig (which is part of the Linux codebase), to provide features such as a menu-driven interface, handling of dependencies, and contextual help. Buildroot is organized as multiple, automatically downloaded packages, which contain the source code of various userspace applications, system utilities, and libraries. Root file system images, which are the final results, may be built using various file systems, including EROFS, cramfs, JFFS2, romfs, SquashFS and UBIFS.[11]

Buildroot is free and open-source software, maintained by Peter Korsgaard and licensed under version 2 or later of the GNU General Public License (GPL). The project started in 2001, with initial intentions to serve as a testbed for uClibc. New releases are made available every three months.

External links

Notes and References

  1. Web site: Old Buildroot downloads (index of /downloads/old) . August 16, 2015 . buildroot.org.
  2. Buildroot 2024.02.9 released . 2024-12-08 . 2024-12-18 . buildroot . Peter Korsgaard . Buildroot 2024.02.9 is released.
  3. Roll Your Own Embedded Linux System with Buildroot . August 31, 2011 . December 18, 2014 . Alexander Sirotkin . Linux Journal.
  4. Web site: Buildroot: Making embedded Linux easy . December 18, 2014 . buildroot.org . dead . https://web.archive.org/web/20141218125412/http://www.buildroot.org/about.html . December 18, 2014 . mdy-all .
  5. Web site: The Buildroot User Manual . December 1, 2014 . December 18, 2014 . buildroot.org .
  6. Web site: Tools and distributions for embedded Linux development . April 27, 2010 . August 16, 2015 . Tom Parkin . LWN.net.
  7. Web site: Buildroot: what's new? - Embedded Linux Conference . 2022. October 2, 2023 . bootlin.com.
  8. Web site: Buildroot's changelog (CHANGES file) . December 1, 2014 . December 18, 2014 . git.buildroot.net.
  9. Web site: Buildroot: What's new? . October 26, 2013 . December 18, 2014 . Peter Korsgaard . elinux.org .
  10. Web site: OpenWrt Buildroot – About . December 6, 2014 . December 18, 2014 . openwrt.org.
  11. Web site: Linux4SAM: BuildRoot . July 15, 2013 . August 16, 2015 . at91.com.