(This file was generated by makeinfo and splitinfo.gawk.)
(Released under the old-style GNU documentation license;
 see sources or other output files for full text.)

3 Prerequisites
***************

Overall, building the TeX Live programs, when using all libraries from
the TL source tree, requires only C and C++ compilers and GNU 'make'.
(If 'make' from your 'PATH' is not GNU make, you can set 'MAKE' in the
environment to whatever is necessary.)

   GNU 'make' is required only because of some third-party libraries,
notably FreeType; all the TL-maintained directories (and
Automake/Autoconf output in general) should work with any reasonable
'make'.

   However, a few programs in the tree have additional requirements:

'dvisvgm'
     requires a C++11 compiler, such as gcc 4.8.1 (or later) or clang
     3.3 (or later).

'web2c'
     requires 'perl' for some tests run by 'make check'.

'xdvik'
'xpdfopen'
     require X11 headers and libraries, often in "development" packages
     that are not installed by default.

'xetex'
     requires 'fontconfig' (again both headers and library), or, for
     MacOSX only, the 'ApplicationServices' and 'Cocoa' frameworks.

'xindy'
     requires GNU 'clisp' and in addition 'perl', 'latex', and
     'pdflatex' to build the rules and/or documentation.

Lacking the required tools, building these programs must avoided, e.g.,
'configure --without-x --disable-xetex --disable-xindy'

   Modifying source files induces more requirements, as one might
expect:

   * Modification of any '.y' or '.l' source files requires 'bison' or
     'flex' to updatete the corresponding C sources.

   * Modification of the sources for '.info' files requires 'makeinfo'.

   * Modification of any part of the build system (M4 macros,
     'configure.ac', 'Makefile.am', or their fragments) requires GNU M4,
     GNU Autoconf, GNU Automake, and GNU Libtool to update the generated
     files.  *Note Build system tools::.

   If you haven't modified any source files, and infrastructure tools
such as 'autoconf' or 'makeinfo' are still being run, check your
timestamps--notably, 'use-commit-times' must be set to 'yes' in your
Subversion configuration (*note Build system tools::).  Barring buggy
commits, no infrastructure tools are needed to do a normal build.

   As an example, on Debian systems the necessary build dependencies can
be installed via:

     apt-get install libfontconfig-dev libx11-dev libxmu-dev libxaw7-dev

