Buildroot

from Wikipedia, the free encyclopedia
Buildroot

Buildroot-logo.png
Basic data

Maintainer Peter Korsgaard
Current  version 2020.05
(June 1, 2020)
operating system GNU / Linux
programming language C , shell script , make
License GPL
www.buildroot.org

Buildroot is an open source project that supports the developer of a Linux system in selecting and configuring the necessary packages and using them to create a root file system.

This package consists of a collection of scripts that map the necessary steps up to the ready-to-use target system. The individual steps are largely configurable and coordinated with one another. The package combines almost everything the developer needs to develop a uClibc -based Linux system. OpenWrt Buildroot is a heavily modified version and is used in the OpenWrt project.

Subsystems

Cross development toolchain

The GCC , the Binutils and the uClibc are downloaded in source code, then a fully functional development environment for the selected target platform (e.g. ARM , MIPS or i386 ) is created on the basis of these . Alternatively, an existing development environment, for example from the manufacturer of a specific processor family , can be used. This also makes it possible to use the GNU-C library used in common Linux distributions for the target system.

Development and debugging tools for the target

The development tools for the target system can also be created, which makes further development there possible. The most important debugging tools (e.g. gdb ) are made available for both the host and the target platform. This enables interactive debugging on systems that hardly have any input or output options.

busybox and uClibc

Both BusyBox and uClibc are central components of the system. Both projects are largely maintained by the same developers. However, with an external toolchain , glibc (instead of uClibc) can be used instead of the one generated by Buildroot and Busybox can also be replaced by the corresponding, but mostly more functional and therefore larger, programs.

Program packages

In addition to the minimal root file system, there is a very large selection of ready-to-use open source packages, the selection ranges from network programs to graphic interfaces and audio programs. But even packages you have created yourself can be integrated into the script-based system with little effort.

Kernel

A kernel version can be specified within Buildroot; this kernel is then generated together with the rest of the system when the target system is created. User-defined kernels can also be obtained (see options of type BR2_LINUX_KERNEL_CUSTOM_ *).

Bootloader

The most important boot loaders are also integrated, including grub and u-boot .

See also

Web links

Individual evidence

  1. a b c www.openhub.net .