Even though C source code is usually fairly portable, there are still differences on each platform that make it impossible to compile most packages with a single Makefile. An early solution to this problem was to provide individual Makefiles for every operating system, or to provide a Makefile that was easy to modify. This approach somehow evolved into scripts that generate Makefiles based on an analysis of the system used to build the package.
GNU autoconf is now the most popular system for automatic file generation. Packages using this system come with files named
config.h.in. To generate a Makefile, run
configure to check your system for prerequisites:
You should get a lot of diagnostic output ...