Autoconf

Autoconf is a powerful tool for generating `configure` scripts, which automatically detect system features and settings required to compile, build, and install software packages on a wide variety of Unix-like systems. It is a core component of the GNU Build System (often referred to as…

Key facts

First appeared
1991
Category
technology
Problem solved
Autoconf was created to address the pervasive challenge of software portability across the fragmented Unix landscape of the late 20th century. Before Autoconf, developers had to manually write complex, platform-specific `configure` scripts or `Makefiles` to account for variations in compilers, libraries, header files, system calls, and utility behavior across different operating systems like SunOS, HP-UX, AIX, IRIX, Linux, and BSD variants. This led to significant time and effort spent debugging build failures rather than developing features, often resulting in projects being difficult or impossible to compile on anything but the developer's original environment.
Platforms
OpenBSD, Solaris, Any POSIX-compliant (Unix-like) operating system (for running the generated `configure` script), GNU/Linux, FreeBSD, HP-UX, MinGW (Windows), macOS, AIX, Cygwin (Windows), NetBSD

Related technologies

Notable users

  • Free Software Foundation (FSF)
  • Many long-standing open-source C/C++ projects
  • GNU Project (e.g., GCC, GDB, GNU Coreutils)
  • Linux kernel (historically, though it uses its own build system now, many tools used with it rely on Autoconf)