Buildroot

Buildroot

Basisdaten

Hauptentwickler Peter Korsgaard
Entwickler Peter Korsgaard
Aktuelle Version 2025.11.1
(20. Januar 2026)
Betriebssystem GNU/Linux
Programmier­sprache C[1], Shellskript[1], make[1]
Lizenz GPL
www.buildroot.org

Buildroot ist ein Open-Source-Projekt, welches den Entwickler eines Linux-Systems dabei unterstützt, die notwendigen Pakete auszuwählen, zu konfigurieren und daraus ein Root-Filesystem zu erstellen.

Dieses Paket besteht aus einer Sammlung von Skripten, welche die notwendigen Schritte bis zum gebrauchsfertigen Zielsystem abbilden. Die einzelnen Schritte sind weitgehend konfigurierbar und aufeinander abgestimmt. Das Paket vereinigt so gut wie alles, was der Entwickler benötigt, um ein uClibc-basiertes Linuxsystem zu entwickeln. OpenWrt Buildroot ist eine stark modifizierte Version und findet im OpenWrt-Projekt Anwendung.

Teilsysteme

Cross-Development-Toolchain

Es werden der GCC, die Binutils und die uClibc im Quelltext heruntergeladen, anschließend wird auf deren Basis eine voll funktionsfähige Entwicklungsumgebung für die ausgewählte Zielplattform (z. B. ARM, MIPS oder i386) erstellt. Alternativ kann eine bereits vorhandene Entwicklungsumgebung, beispielsweise vom Hersteller einer bestimmten Prozessorfamilie, genutzt werden. Dies ermöglicht es auch, die unter gewöhnlichen Linux-Distributionen verwendete GNU-C-Bibliothek für das Zielsystem zu benutzen.

Entwicklungs- und Debugging-Werkzeuge für das Target

Genauso können die Entwicklungswerkzeuge für das Zielsystem erstellt werden, was eine weitere Entwicklung dort möglich macht. Die wichtigsten Debuggingwerkzeuge (z. B. gdb) werden sowohl für die Host- als auch für die Zielplattform zur Verfügung gestellt. Dies ermöglicht interaktives Debugging auf Systemen, welche kaum Ein- oder Ausgabemöglichkeiten besitzen.

busybox und uClibc

Sowohl BusyBox als auch uClibc sind zentraler Bestandteil des Systems. Beide Projekte werden größtenteils von den gleichen Entwicklern gepflegt. Allerdings lässt sich mit einer externen Toolchain statt der von Buildroot erzeugten die glibc (statt der uClibc) nutzen und auch Busybox lässt sich durch die entsprechenden, meist jedoch funktionsreicheren und damit größeren, Programme ersetzen.

Programmpakete

Neben dem minimalen Root-Dateisystem gibt es eine sehr große Auswahl an fertigen Open-Source-Paketen, die Auswahl reicht von Netzwerk-Programmen über grafische Oberflächen bis hin zu Audioprogrammen. Aber auch selbst erstellte Pakete lassen sich mit wenig Aufwand in das skriptbasierte System integrieren.

Kernel

Innerhalb von Buildroot kann eine Kernelversion angegeben werden, beim Erstellen des Zielsystems wird dieser Kernel dann gemeinsam mit dem restlichen System mitgeneriert. Außerdem können auch benutzerdefinierte Kernel bezogen werden (siehe dazu die Optionen des Typs BR2_LINUX_KERNEL_CUSTOM_*).

Bootloader

Die wichtigsten Bootloader sind ebenfalls mit integriert, darunter grub und u-boot.

Siehe auch

Einzelnachweise

  1. a b c www.openhub.net.

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.