Tools for Compilation (The GNU C Library) (original) (raw)
We recommend installing the following GNU tools before attempting to build the GNU C Library:
- GNU
make4.0 or newer
As of release time, GNUmake4.4.1 is the newest verified to work to build the GNU C Library. - GCC 12.1 or newer
GCC 12.1 or higher is required. In general it is recommended to use the newest version of the compiler that is known to work for building the GNU C Library, as newer compilers usually produce better code. As of release time, GCC 15.1.1 is the newest compiler verified to work to build the GNU C Library.
For multi-arch support it is recommended to use a GCC which has been built with support for GNU indirect functions. This ensures that correct debugging information is generated for functions selected by IFUNC resolvers. This support can either be enabled by configuring GCC with ‘--enable-gnu-indirect-function’, or by enabling it by default by setting ‘default_gnu_indirect_function’ variable for a particular architecture in the GCC source file gcc/config.gcc.
You can use whatever compiler you like to compile programs that use the GNU C Library.
Check the FAQ for any special compiler issues on particular platforms. - GNU
binutils2.39 or later
You must use GNUbinutils(as and ld) to build the GNU C Library. No other assembler or linker has the necessary functionality at the moment. As of release time, GNUbinutils2.45 is the newest verified to work to build the GNU C Library. - GNU
texinfo4.7 or later
To correctly translate and install the Texinfo documentation you need this version of thetexinfopackage. Earlier versions do not understand all the tags used in the document, and the installation mechanism for the info files is not present or works differently. As of release time,texinfo7.2 is the newest verified to work to build the GNU C Library. - GNU
awk3.1.2, or higherawkis used in several places to generate files. Somegawkextensions are used, including theasortifunction, which was introduced in version 3.1.2 ofgawk. As of release time,gawkversion 5.3.2 is the newest verified to work to build the GNU C Library.
Testing the GNU C Library requiresgawkto be compiled with support for high precision arithmetic via theMPFRmultiple-precision floating-point computation library. - GNU
bison2.7 or laterbisonis used to generate theyaccparser code in the intlsubdirectory. As of release time,bisonversion 3.8.2 is the newest verified to work to build the GNU C Library. - Perl 5
Perl is not required, but if present it is used in some tests and themtraceprogram, to build the GNU C Library manual. As of release timeperlversion 5.42.0 is the newest verified to work to build the GNU C Library. - GNU
sed3.02 or newerSedis used in several places to generate files. Most scripts work with any version ofsed. As of release time,sedversion 4.9 is the newest verified to work to build the GNU C Library. - Python 3.4 or later
Python is required to build the GNU C Library. As of release time, Python 3.13.5 is the newest verified to work for building and testing the GNU C Library. - PExpect 4.0
The pretty printer tests drive GDB through test programs and compare its output to the printers’. PExpect is used to capture the output of GDB, and should be compatible with the Python version in your system. As of release time PExpect 4.9.0 is the newest verified to work to test the pretty printers. - The Python
abnfmodule.
This module is optional and used to verify some ABNF grammars in the manual. Version 2.2.0 has been confirmed to work as expected. A missingabnfmodule does not reduce the test coverage of the library itself. - GDB 7.8 or later with support for Python 3.4 or later
GDB itself needs to be configured with Python support in order to use the pretty printers. Notice that your system having Python available doesn’t imply that GDB supports it, nor that your system’s Python and GDB’s have the same version. As of release time GNUdebugger14.2 is the newest verified to work to test the pretty printers.
Unless Python, PExpect and GDB with Python support are present, the printer tests will report themselves asUNSUPPORTED. Notice that some of the printer tests require the GNU C Library to be compiled with debugging symbols.
You may also need these packages if you upgrade your source tree using patches, although we try to avoid this.