blob: 5a9d049e02e49f524e8460c282b43764cd58c7df [file] [log] [blame]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
[[requirement]]
System requirements
-------------------
Buildroot is designed to run on Linux systems.
Buildroot needs some software to be already installed on the host
system; here are the lists of the mandatory and optional packages
(package names may vary between distributions).
Take care to _install both runtime and development data_, especially
for the libraries that may be packaged in 2 distinct packages.
[[requirement-mandatory]]
Mandatory packages
~~~~~~~~~~~~~~~~~~
* Build tools:
** +which+
** +sed+
** +make+ (version 3.81 or any later)
** +binutils+
** +build-essential+ (only for Debian based systems)
** +gcc+ (version 2.95 or any later)
** `g++` (version 2.95 or any later)
** +bash+
** +gawk+
** +bison+
** +flex+
** +gettext+
** +patch+
** +gzip+
** +bzip2+
** +perl+
** +tar+
** +cpio+
** +python+ (version 2.6 or 2.7)
** +unzip+
** +rsync+
** +texinfo+ (required for internal Buildroot toolchain backend)
* Source fetching tools:
** +wget+
[[requirement-optional]]
Optional packages
~~~~~~~~~~~~~~~~~
* Source fetching tools:
+
In the official tree, most of the package sources are retrieved
using +wget+; a few are only available through their +git+, +mercurial+,
or +svn+ repository.
+
All other source fetching methods are implemented and may be used in a
development context (further details: refer to xref:download-infra[]).
+
** +bazaar+
** +cvs+
** +git+
** +mercurial+
** +rsync+
** +scp+
** +subversion+
* Configuration interface dependencies (requires development libraries):
** +ncurses5+ to use the 'menuconfig' interface
** +qt4+ to use the 'xconfig' interface
** +glib2+, +gtk2+ and +glade2+ to use the 'gconfig' interface
* Java-related packages, if the Java Classpath needs to be built for
the target system:
** The +javac+ compiler
** The +jar+ tool
* Documentation generation tools:
** +asciidoc+