]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - docs/manual/prerequisite.txt
ltrace: fix visibility of Config.in comment
[coffee/buildroot.git] / docs / manual / prerequisite.txt
1 // -*- mode:doc; -*-
2 // vim: set syntax=asciidoc:
3
4 [[requirement]]
5 == System requirements
6
7 Buildroot is designed to run on Linux systems.
8
9 While Buildroot itself will build most host packages it needs for the
10 compilation, certain standard Linux utilities are expected to be
11 already installed on the host system. Below you will find an overview of
12 the mandatory and optional packages (note that package names may vary
13 between distributions).
14
15 [[requirement-mandatory]]
16
17 === Mandatory packages
18
19 * Build tools:
20
21 ** +which+
22 ** +sed+
23 ** +make+ (version 3.81 or any later)
24 ** +binutils+
25 ** +build-essential+ (only for Debian based systems)
26 ** +gcc+ (version 2.95 or any later)
27 ** `g++` (version 2.95 or any later)
28 ** +bash+
29 ** +patch+
30 ** +gzip+
31 ** +bzip2+
32 ** +perl+ (version 5.8.7 or any later)
33 ** +tar+
34 ** +cpio+
35 ** +python+ (version 2.6 or any later)
36 ** +unzip+
37 ** +rsync+
38 ** +file+ (must be in +/usr/bin/file+)
39 ** +bc+
40
41 * Source fetching tools:
42 ** +wget+
43
44 [[requirement-optional]]
45
46 === Optional packages
47
48 * Configuration interface dependencies:
49 +
50 For these libraries, you need to install both runtime and development
51 data, which in many distributions are packaged separately. The
52 development packages typically have a _-dev_ or _-devel_ suffix.
53 +
54 ** +ncurses5+ to use the 'menuconfig' interface
55 ** +qt4+ to use the 'xconfig' interface
56 ** +glib2+, +gtk2+ and +glade2+ to use the 'gconfig' interface
57
58 * Source fetching tools:
59 +
60 In the official tree, most of the package sources are retrieved using
61 +wget+ from _ftp_, _http_ or _https_ locations. A few packages are only
62 available through a version control system. Moreover, Buildroot is
63 capable of downloading sources via other tools, like +rsync+ or +scp+
64 (refer to xref:download-infra[] for more details). If you enable
65 packages using any of these methods, you will need to install the
66 corresponding tool on the host system:
67 +
68 ** +bazaar+
69 ** +cvs+
70 ** +git+
71 ** +mercurial+
72 ** +rsync+
73 ** +scp+
74 ** +subversion+
75
76 * Java-related packages, if the Java Classpath needs to be built for
77   the target system:
78 ** The +javac+ compiler
79 ** The +jar+ tool
80
81 * Documentation generation tools:
82 ** +asciidoc+, version 8.6.3 or higher
83 ** +w3m+
84 ** +python+ with the +argparse+ module (automatically present in 2.7+ and 3.2+)
85 ** +dblatex+ (required for the pdf manual only)
86
87 * Graph generation tools:
88 ** +graphviz+ to use 'graph-depends' and '<pkg>-graph-depends'
89 ** +python-matplotlib+ to use 'graph-build'