"For many aspiring Linux/UNIX programmers, especially those
familiar with the IDE's of the DOS/Windows world, learning how to
use the make utility is an essential addition to their repertoire.
For simple projects using make may seem to be a waste of time;
however, when working on any large project, make becomes a
necessity for any programmer who wishes to stay sane."
"... To put it simply, make is a utility that keeps track of how
to make your program. To use make, you need to create a Makefile,
which is a text file that tells make what instructions to use in
compiling and linking your program. Make also tracks dependencies
between your source files so when you change any of the files, only
the necessary files are recompiled..."