Buildroot は、組み込みシステム用のLinuxベースのシステムソフトウェアの構築プロセスを自動化するMakefileおよびパッチファイルのセットです。これには、ビルド システムとは異なるターゲット プラットフォームへのクロス コンパイルも含まれます。Buildroot は、クロス コンパイルツール チェーン、ルート ファイルシステム、Linux カーネルイメージ、およびブート ローダーを構築できます。[ 3 ] [ 4 ] [ 5 ] : 2–3、10–12 [ 6 ]
Buildroot は、 x86、ARM、MIPS、PowerPC、RISC-Vなど、複数のコンピュータおよび命令セットアーキテクチャをサポートしています。[ 7 ] Buildroot には、 Cubieboard、Raspberry Pi、SheevaPlugなど、市販の組み込みボードの構成がいくつか付属しています。[ 8 ] [ 9 ] : 25組み込みオペレーティングシステムを作成するOpenWrtプロジェクトや、 Google Fiberブロードバンド サービスで使用される顧客宅内機器(CPE)のファームウェアなど、いくつかのサードパーティ プロジェクトや製品がBuildroot をビルド システムのベースとして使用しています。[ 9 ] : 15 [ 10 ]
GNU C ライブラリ、uClibc、muslなどの複数のC 標準ライブラリのバリアントがサポートされており、 Linaroなどのさまざまな事前構成済み開発環境に属するものもサポートされています。Buildroot のビルド構成システムは、内部的にKconfig (Linux コードベースの一部) を使用して、メニュー駆動型インターフェイス、依存関係の処理、コンテキストヘルプなどの機能を提供します。Buildroot は、さまざまなユーザースペース アプリケーション、システム ユーティリティ、ライブラリのソース コードを含む、自動的にダウンロードされる複数のパッケージとして構成されています。最終結果であるルート ファイルシステム イメージは、EROFS、cramfs、JFFS2、romfs、SquashFS、UBIFSなどのさまざまなファイルシステムを使用して構築できます。[ 4 ] [ 9 ] : 6–7、18 [ 11 ]
Buildrootは、Peter Korsgaardによってメンテナンスされ、GNU一般公衆利用許諾契約書(GPL)バージョン2以降に基づいてライセンスされている、無料のオープンソースソフトウェアです。 [ 4 ]このプロジェクトは2001年に開始され、当初はuClibcのテストベッドとして機能することを目的としていました。新しいリリースは3か月ごとに公開されます。[ 5 ] : 5 [ 9 ] : 4