Bin Meng | bcb78a0 | 2019-10-27 05:19:45 -0700 | [diff] [blame] | 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 |