Library Maintenance
*******************
How to Install the GNU C Library
================================
Installation of the GNU C library is relatively simple, but usually
requires several GNU tools to be installed already.
To configure the GNU C library for your system, run the shell script
`configure' with `sh'. Use an argument which is the conventional GNU
name for your system configuration--for example, `sparc-sun-sunos4.1',
for a Sun 4 running SunOS 4.1. *Note Installation:
(gcc.info)Installation, for a full description of standard GNU
configuration names. If you omit the configuration name, `configure'
will try to guess one for you by inspecting the system it is running
on. It may or may not be able to come up with a guess, and the its
guess might be wrong. `configure' will tell you the canonical name of
the chosen configuration before proceeding.
Here are some options that you should specify (if appropriate) when
you run `configure':
`--with-gnu-ld'
Use this option if you plan to use GNU `ld' to link programs with
the GNU C Library. (We strongly recommend that you do.) This
option enables use of features that exist only in GNU `ld'; so if
you configure for GNU `ld' you must use GNU `ld' *every time* you
link with the GNU C Library, and when building it.
`--with-gnu-as'
Use this option if you plan to use the GNU assembler, `gas', when
building the GNU C Library. On some systems, the library may not
build properly if you do *not* use `gas'.
`--with-gnu-binutils'
This option implies both `--with-gnu-ld' and `--with-gnu-as'. On
systems where GNU tools are the system tools, there is no need to
specify this option. These include GNU, GNU/Linux, and free BSD
systems.
`--without-fp'
`--nfp'
Use this option if your computer lacks hardware floating-point
support.
`--prefix=DIRECTORY'
Install machine-independent data files in subdirectories of
`DIRECTORY'. (You can also set this in `configparms'; see below.)
`--exec-prefix=DIRECTORY'
Install the library and other machine-dependent files in
subdirectories of `DIRECTORY'. (You can also set this in
`configparms'; see below.)
`--enable-shared'
`--disable-shared'
Enable or disable building of an ELF shared library on systems that
support it. The default is to build the shared library on systems
using ELF when the GNU `binutils' are available.
`--enable-profile'
`--disable-profile'
Enable or disable building of the profiled C library, `-lc_p'. The
default is to build the profiled library. You may wish to disable
it if you don't plan to do profiling, because it doubles the build
time of compiling just the unprofiled static library.
`--enable-omitfp'
Enable building a highly-optimized but possibly undebuggable
static C library. This causes the normal static and shared (if
enabled) C libraries to be compiled with maximal optimization,
including the `-fomit-frame-pointer' switch that makes debugging
impossible on many machines, and without debugging information
(which makes the binaries substantially smaller). An additional
static library is compiled with no optimization and full debugging
information, and installed as `-lc_g'.
`--enable-bounded'
`--disable-bounded'
Enable or disable building of the C library with support for bounded
pointers. To do this one need the enhanced version of the GNU CC
with can generate code for bounded pointers. This version of the
C library is necessary to run code which is also compiled using the
enhanced gcc for debugging purposes.
There are two more options:
`--with-gmp'
`--with-gettext'
These options are not of much use for the normal installer of the
GNU libc. Only maintainers need this to get automatic updates of
the files from these packages in the GNU C library source tree.