GNU Make 4.1
Builds programs from sources
This tool is capable of building programs from sources, thanks to a file called the makefile, which can be found in the sources archive of the respective program, and lists each of the non-source files, as well as how to compute them from other files.
Builds and installs packages
The software is capable of enabling end-users to build and install packages without them knowing the details of how it is done, and it can also automatically figure out which files need to be updated, based on which source files have been changed.
GNU Make has numerous powerful features that can be used by developers in makefiles. It can also regenerate, use and delete intermediate files that need not be saved during the compilation process.
An essential program for every GNU/Linux system
GNU Make is one of the most essential program in a GNU/Linux operating system, as it allows users to compile and install applications on their distribution using the universal sources archive of the respective project. Without it, you won’t be able to install any package that is distributed only as a source tarball.
Under the hood, availability and supported OSes
The software is written entirely in the C++ programming language and has been engineered to work well on any GNU/Linux distribution, supporting both 32-bit and 64-bit instruction set architectures.
The funny part is that GNU Make itself is distributed as a universal sources archive, which means that you will need to already have GNU Make installed in order to install it on your Linux distribution from sources. However, it should be installed by default on any distro.
Reviewed by Marius Nestor on October 6th, 2014
In a hurry? Add it to your Download Basket!
- WARNING: Backward-incompatibility! If .POSIX is specified, then make adheres to the POSIX backslash/newline handling requirements, which introduces the following changes to the standard backslash/newline handling in non-recipe lines: * Any trailing space before the backslash is preserved * Each backslash/newline (plus subsequent whitespace) is converted to a single space
- New feature: GNU Guile integration This version of GNU make can be compiled with GNU Guile integration. GNU Guile serves as an embedded extension language for make. See the "Guile Function" section in the GNU Make manual for details. Currently GNU Guile 1.8 and 2.0+ are supported. In Guile 1.8 there is no support for internationalized character sets. In Guile 2.0+, scripts can be encoded in UTF-8.
- New command line option: --output-sync (-O) enables grouping of output by target or by recursive make. This is useful during parallel builds to avoid mixing output from different jobs together giving hard-to-understand results. Original implementation by David Boyce . Reworked and enhanced by Frank Heckenbach . Windows support by Eli Zaretskii .
- New command line option: --trace enables tracing of targets. When enabled the recipe to be invoked is printed even if it would otherwise be suppressed by .SILENT or a "@" prefix character. Also before each recipe is run the makefile name and linenumber where it was defined are shown as well as the prerequisites that caused the target to be considered out of date.
Application descriptionGNU Make is an open source and free command-line application that allows users to compile software projects on any GNU...