Previous: , Up: General ideas   [Contents][Index]

3.6 Programs automake might require

Automake sometimes requires helper programs so that the generated Makefile can do its work properly. There are a fairly large number of them, and we list them here.

Although all of these files are distributed and installed with Automake, a couple of them are maintained separately. The Automake copies are updated before each release, but we mention the original source in case you need more recent versions.


These two files are used for de-ANSI-fication support (obsolete see Automatic de-ANSI-fication).


This is a wrapper for compilers that do not accept options -c and -o at the same time. It is only used when absolutely required. Such compilers are rare.


These two programs compute the canonical triplets for the given build, host, or target architecture. These programs are updated regularly to support new architectures and fix probes broken by changes in new kernel versions. Each new release of Automake comes with up-to-date copies of these programs. If your copy of Automake is getting old, you are encouraged to fetch the latest versions of these files from before making a release.

This file is not a program, it is a configure fragment used for multilib support (see Support for Multilibs). This file is maintained in the GCC tree at


This program understands how to run a compiler so that it will generate not only the desired output but also dependency information that is then used by the automatic dependency tracking feature (see Automatic dependency tracking).


This program is used to byte-compile Emacs Lisp code.


This is a replacement for the install program that works on platforms where install is unavailable or unusable.


This script is used to generate a version.texi file. It examines a file and prints some date information about it.


This wraps a number of programs that are typically only required by maintainers. If the program in question doesn’t exist, missing prints an informative warning and attempts to fix things so that the build can continue.


This script used to be a wrapper around ‘mkdir -p’, which is not portable. Now we prefer to use ‘install-sh -d’ when configure finds that ‘mkdir -p’ does not work, this makes one less script to distribute.

For backward compatibility mkinstalldirs is still used and distributed when automake finds it in a package. But it is no longer installed automatically, and it should be safe to remove it.


This is used to byte-compile Python scripts.


This program duplicates a tree of directories, using symbolic links instead of copying files. Such an operation is performed when building multilibs (see Support for Multilibs). This file is maintained in the GCC tree at


Not a program, this file is required for ‘make dvi’, ‘make ps’ and ‘make pdf’ to work when Texinfo sources are in the package. The latest version can be downloaded from


This program wraps lex and yacc to rename their output files. It also ensures that, for instance, multiple yacc instances can be invoked in a single directory in parallel.

Previous: Variables reserved for the user, Up: General ideas   [Contents][Index]