Merge tag 'dm-pull-29oct19' of git://git.denx.de/u-boot-dm
[oweals/u-boot.git] / doc / build / tools.rst
1 .. SPDX-License-Identifier: GPL-2.0+
2 .. sectionauthor:: Bin Meng <bmeng.cn@gmail.com>
3
4 Host tools
5 ==========
6
7 Building tools for Linux
8 ------------------------
9
10 To allow distributions to distribute all possible tools in a generic way,
11 avoiding the need of specific tools building for each machine, a tools only
12 defconfig file is provided.
13
14 Using this, we can build the tools by doing::
15
16    $ make tools-only_defconfig
17    $ make tools-only
18
19 Building tools for Windows
20 --------------------------
21 If you wish to generate Windows versions of the utilities in the tools directory
22 you can use MSYS2, a software distro and building platform for Windows.
23
24 Download the MSYS2 installer from https://www.msys2.org. Make sure you have
25 installed all required packages below in order to build these host tools::
26
27    * gcc (9.1.0)
28    * make (4.2.1)
29    * bison (3.4.2)
30    * diffutils (3.7)
31    * openssl-devel (1.1.1.d)
32
33 Note the version numbers in these parentheses above are the package versions
34 at the time being when writing this document. The MSYS2 installer tested is
35 http://repo.msys2.org/distrib/x86_64/msys2-x86_64-20190524.exe.
36
37 There are 3 MSYS subsystems installed: MSYS2, MinGW32 and MinGW64. Each
38 subsystem provides an environment to build Windows applications. The MSYS2
39 environment is for building POSIX compliant software on Windows using an
40 emulation layer. The MinGW32/64 subsystems are for building native Windows
41 applications using a linux toolchain (gcc, bash, etc), targeting respectively
42 32 and 64 bit Windows.
43
44 Launch the MSYS2 shell of the MSYS2 environment, and do the following::
45
46    $ make tools-only_defconfig
47    $ make tools-only NO_SDL=1