// -*- 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+
** +patch+
** +gzip+
** +bzip2+
** +perl+ (version 5.8.7 or any later)
** +tar+
** +cpio+
** +python+ (version 2.6 or 2.7)
** +unzip+
** +rsync+

* 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+,
+svn+ or +cvs+ 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+, version 8.6.3 or higher
** +w3m+
** +python+ with the +argparse+ module (automatically present in 2.7+ and 3.2+)
** +dblatex+ (required for the pdf manual only)
