summary refs log tree commit diff
path: root/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL315
1 files changed, 82 insertions, 233 deletions
diff --git a/INSTALL b/INSTALL
index 889780433e..85fe1eb904 100644
--- a/INSTALL
+++ b/INSTALL
@@ -47,11 +47,13 @@ you run `configure':
 `--prefix=DIRECTORY'
      Install machine-independent data files in subdirectories of
      `DIRECTORY'.  (You can also set this in `configparms'; see below.)
+     The default is to install in `/usr/local'.
 
 `--exec-prefix=DIRECTORY'
      Install the library and other machine-dependent files in
      subdirectories of `DIRECTORY'.  (You can also set this in
-     `configparms'; see below.)
+     `configparms'; see below.)  The default is to use <prefix>/bin and
+     <prefix>/sbin.
 
 `--enable-shared'
 `--disable-shared'
@@ -76,23 +78,6 @@ you run `configure':
      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.
-
-
    The simplest way to run `configure' is to do it in the directory
 that contains the library sources.  This prepares to build the library
 in that very directory.
@@ -127,7 +112,7 @@ and define in that file the parameters you want to specify.
 `configparms' should *not* be an edited copy of `Makeconfig'; specify
 only the parameters that you want to override.  To see how to set these
 parameters, find the section of `Makeconfig' that says "These are the
-configuration variables." Then for each parameter that you want to
+configuration variables."  Then for each parameter that you want to
 change, copy the definition from `Makeconfig' to your new `configparms'
 file, and change the value as appropriate for your system.
 
@@ -155,11 +140,15 @@ library facilities, type `make check'.  This will produce several files
 with names like `PROGRAM.out'.
 
    To format the `GNU C Library Reference Manual' for printing, type
-`make dvi'.
+`make dvi'.  You need a working TeX installation to do this.
 
    To install the library and its header files, and the Info files of
 the manual, type `make install'.  This will build things if necessary,
-before installing them.
+before installing them.  If you want to install the files in a different
+place than the one specified at configuration time you can specify a
+value for the Makefile variable `install_root' on the command line.
+This is useful to create chroot'ed environment or to prepare binary
+releases.
 
 Recommended Tools to Install the GNU C Library
 ----------------------------------------------
@@ -167,27 +156,57 @@ Recommended Tools to Install the GNU C Library
    We recommend installing the following GNU tools before attempting to
 build the GNU C library:
 
-   * `make' 3.75
+   * `make' 3.76.1
 
      You need the latest version of GNU `make'.  Modifying the GNU C
      Library to work with other `make' programs would be so hard that we
-     recommend you port GNU `make' instead.  *Really.* We recommend
-     version GNU `make' version 3.75 or later.
+     recommend you port GNU `make' instead.  *Really.*  We recommend
+     version GNU `make' version 3.75, 3.76.1 or later.  Version 3.76 is
+     known to have a bug which only shows up in big projects like GNU
+     `libc'.
 
-   * GCC 2.7.2.1
+   * GCC 2.7.2.3
 
      On most platforms, the GNU C library can only be compiled with the
      GNU C compiler.  We recommend GCC version 2.7.2 or later; earlier
      versions may have problems.
 
-   * `binutils' 2.7
+     On PowerPC, GCC versions dated earlier than 970904 are known not
+     to work (they crash), including 2.7.2.
+
+   * `binutils' 2.8.1
 
      Using the GNU `binutils' (assembler, linker, and related tools) is
      preferable when possible, and they are required to build an ELF
-     shared C library.  We recommend `binutils' version 2.7 or later;
+     shared C library.  We recommend `binutils' version 2.8.1 or later;
      earlier versions are known to have problems or to not support all
      architectures.
 
+   * `texinfo' 3.11
+
+     To correctly translate and install the Texinfo documentation you
+     need this version of the `texinfo' package.  Former versions did
+     not understand all the tags used in the document and also the
+     installation mechanisms for the info files was not present or
+     worked differently.
+
+     On some Debian Linux based systems the used `install-info' program
+     works differently.  Here you have to run make like this:
+
+          make INSTALL_INFO=/path/to/GNU/install-info install
+
+   If you change any configuration file you will need also
+
+   * `autoconf' 2.12
+
+and if you change any of the message translation files you will also
+need
+
+   * `GNU gettext' 0.10 or later
+
+If you upgrade your source tree using the patches made available you
+probably will need those package above in any case.
+
 Supported Configurations
 ------------------------
 
@@ -195,18 +214,16 @@ Supported Configurations
 following patterns:
 
      alpha-ANYTHING-linux
-     alpha-ANYTHING-linuxecoff
      iX86-ANYTHING-gnu
      iX86-ANYTHING-linux
      m68k-ANYTHING-linux
-     mips-ANYTHING-linux
-     sparc-ANYTHING-linux
      powerpc-ANYTHING-linux
 
-   Former versions of this library used to support the following
-configurations but the current status is unknown:
+   Former releases of this library (version 1.09.1 and perhaps earlier
+versions) used to run on the following configurations:
 
      alpha-dec-osf1
+     alpha-ANYTHING-linuxecoff
      iX86-ANYTHING-bsd4.3
      iX86-ANYTHING-isc2.2
      iX86-ANYTHING-isc3.N
@@ -228,6 +245,12 @@ configurations but the current status is unknown:
      sparc-sun-solaris2.N
      sparc-sun-sunos4.N
 
+   Since no one has volunteered to test and fix the above
+configurations, these are not supported at the moment.  It's expected
+that these don't work anymore.  Porting the library is not hard.  If
+you are interested in doing a port, please contact the glibc
+maintainers by sending electronic mail to <bug-glibc@prep.ai.mit.edu>.
+
    Each case of `iX86' can be `i386', `i486', `i586', or `i686'.  All
 of those configurations produce a library that can run on any of these
 processors.  The library will be optimized for the specified processor,
@@ -278,11 +301,11 @@ and `config.make' which are created by running `configure'; they will
 be in whatever directory was current when you ran `configure'.
 
    If you think you have found some way in which the GNU C library does
-not conform to the ANSI and POSIX standards (*note Standards and
+not conform to the ISO and POSIX standards (*note Standards and
 Portability::.), that is definitely a bug.  Report it!
 
-   Send bug reports to the Internet address `bug-glibc@prep.ai.mit.edu'
-or the UUCP path `mit-eddie!prep.ai.mit.edu!bug-glibc'.  If you have
+   Send bug reports to the Internet address <bug-glibc@prep.ai.mit.edu>
+or the UUCP path <mit-eddie!prep.ai.mit.edu!bug-glibc>.  If you have
 other problems with installation or use, please report those as well.
 
    If you are not sure how a function should behave, and this manual
@@ -290,8 +313,8 @@ doesn't tell you, that's a bug in the manual.  Report that too!  If the
 function's behavior disagrees with the manual, then either the library
 or the manual has a bug, so report the disagreement.  If you find any
 errors or omissions in this manual, please report them to the Internet
-address `bug-glibc-manual@prep.ai.mit.edu' or the UUCP path
-`mit-eddie!prep.ai.mit.edu!bug-glibc-manual'.
+address <bug-glibc-manual@prep.ai.mit.edu> or the UUCP path
+<mit-eddie!prep.ai.mit.edu!bug-glibc-manual>.
 
 Adding New Functions
 ====================
@@ -672,10 +695,11 @@ level of the `sysdeps' hierarchy.  This directory contains
 subdirectories (and subdirectory trees) for various Unix variants.
 
    The functions which are system calls in most Unix systems are
-automatically generated from the `syscalls.list' files for the appropriate
-archirecture.  The format of the syscalls.list files is quite easy: only
-a few informations are necessary line the system call name, the number of
-arguments and such.  The files are run through the C preprocessor.
+implemented in assembly code, which is generated automatically from
+specifications in the file `sysdeps/unix/syscalls.list'.  Some special
+system calls are implemented in files that are named with a suffix of
+`.S'; for example, `_exit.S'.  Files ending in `.S' are run through the
+C preprocessor before being fed to the assembler.
 
    These files all use a set of macros that should be defined in
 `sysdep.h'.  The `sysdep.h' file in `sysdeps/unix' partially defines
@@ -711,7 +735,7 @@ parts of the library were contributed or worked on by other people.
      related code were written by Michael J. Haertel.
 
    * Fast implementations of many of the string functions (`memcpy',
-     `strlen', etc.) were written by Torbjorn Granlund.
+     `strlen', etc.) were written by Torbj"orn Granlund.
 
    * The `tar.h' header file was written by David J. MacKenzie.
 
@@ -722,7 +746,7 @@ parts of the library were contributed or worked on by other people.
    * The DES encryption function `crypt' and related functions were
      contributed by Michael Glad.
 
-   * The `ftw' function was contributed by Ian Lance Taylor.
+   * The `ftw' and `nftw' function was contributed by Ulrich Drepper.
 
    * The startup code to support SunOS shared libraries was contributed
      by Tom Quinn.
@@ -749,7 +773,7 @@ parts of the library were contributed or worked on by other people.
      and the floating-point reading function used by `scanf', `strtod'
      and friends were written by Ulrich Drepper.  The multi-precision
      integer functions used in those functions are taken from GNU MP,
-     which was contributed by Torbjorn Granlund.
+     which was contributed by Torbj"orn Granlund.
 
    * The internationalization support in the library, and the support
      programs `locale' and `localedef', were written by Ulrich Drepper.
@@ -771,9 +795,9 @@ parts of the library were contributed or worked on by other people.
    * The port to Linux/m68k (`m68k-ANYTHING-linux') was contributed by
      Andreas Schwab.
 
-   * The ports to Linux/ARM (`arm-ANYTHING-linuxaout') and ARM standalone
-     (`arm-ANYTHING-none'), as well as parts of the IPv6 support code, were
-     contributed by Philip Blundell.
+   * The ports to Linux/ARM (`arm-ANYTHING-linuxaout') and ARM
+     standalone (`arm-ANYTHING-none'), as well as parts of the IPv6
+     support code, were contributed by Philip Blundell.
 
    * Richard Henderson contributed the ELF dynamic linking code and
      other support for the Alpha processor.
@@ -781,6 +805,12 @@ parts of the library were contributed or worked on by other people.
    * David Mosberger-Tang contributed the port to Linux/Alpha
      (`alpha-ANYTHING-linux').
 
+   * The port to Linux on PowerPC (`powerpc-ANYTHING-linux') was
+     contributed by Geoffrey Keating.
+
+   * Miles Bader wrote the argp argument-parsing package, and the
+     argz/envz interfaces.
+
    * Stephen R. van den Berg contributed a highly-optimized `strstr'
      function.
 
@@ -797,10 +827,9 @@ parts of the library were contributed or worked on by other people.
      platforms was written by Per Bothner and modified by Ulrich
      Drepper.
 
-   * Some of the Internet-related code (most of the `inet'
-     subdirectory) and several other miscellaneous functions and
-     header files have been included from 4.4 BSD with little or no
-     modification.
+   * The Internet-related code (most of the `inet' subdirectory) and
+     several other miscellaneous functions and header files have been
+     included from 4.4 BSD with little or no modification.
 
      All code incorporated from 4.4 BSD is under the following
      copyright:
@@ -851,7 +880,7 @@ parts of the library were contributed or worked on by other people.
      `rand' and `srand' functions, were written by Earl T. Cohen for
      the University of California at Berkeley and are copyrighted by the
      Regents of the University of California.  They have undergone minor
-     changes to fit into the GNU C library and to fit the ANSI C
+     changes to fit into the GNU C library and to fit the ISO C
      standard, but the functional code is Berkeley's.
 
    * The Internet resolver code is taken directly from BIND 4.9.5,
@@ -938,187 +967,7 @@ parts of the library were contributed or worked on by other people.
                 Carnegie Mellon University
                 Pittsburgh PA 15213-3890
 
-          or `Software.Distribution@CS.CMU.EDU' any improvements or
+          or <Software.Distribution@CS.CMU.EDU> any improvements or
           extensions that they make and grant Carnegie Mellon the
           rights to redistribute these changes.
 
-   * The `getaddrinfo' function is written by Craig Metz and it has the
-     following copyright:
-
-	The Inner Net License, Version 2.00
-	===================================
-
-	The author(s) grant permission for redistribution and use in source and
-	binary forms, with or without modification, of the software
-	and documentation provided that the following conditions are met:
-
-	0. If you receive a version of the software that is
-	   specifically labelled as not being for redistribution
-	   (check the version message and/or README), you are not
-	   permitted to redistribute that version of the software in
-	   any way or form.
-	1. All terms of the all other applicable copyrights and
-	   licenses must be followed.
-	2. Redistributions of source code must retain the authors'
-	   copyright notice(s), this list of conditions, and the
-	   following disclaimer.
-	3. Redistributions in binary form must reproduce the authors'
-	   copyright notice(s), this list of conditions, and the
-	   following disclaimer in the documentation and/or other
-	   materials provided with the distribution.
-	4. All advertising materials mentioning features or use of
-	   this software must display the following acknowledgement
-	   with the name(s) of the authors as specified in the
-	   copyright notice(s) substituted where indicated:
-
-	This product includes software developed by <name(s)>, The Inner
-	Net, and other contributors.
-
-	5. Neither the name(s) of the author(s) nor the names of its
-	   contributors may be used to endorse or promote products
-	   derived from this software without specific prior written
-	   permission.
-
-	THIS SOFTWARE IS PROVIDED BY ITS AUTHORS AND CONTRIBUTORS ``AS
-	IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-	LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-	FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
-	SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-	INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-	DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-	SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-	OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-	LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-	(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
-	THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
-	OF SUCH DAMAGE.
-
-	If these license terms cause you a real problem, contact the author.
-+
-   * The `db' library is taken from the db-2.3.4 distribution by Sleepycat
-     Software, and is covered by the following terms:
-
-	/*-
-	 * @(#)LICENSE	10.4 (Sleepycat) 7/24/97
-	 */
-
-	The following are the copyrights and redistribution conditions
-	that apply to this copy of the DB software.  For a license to use,
-	redistribute or sell DB software under conditions other than those
-	described here, or to purchase support for this software, please
-	contact Sleepycat Software at one of the following addresses:
-
-		Sleepycat Software		db@sleepycat.com
-		394 E. Riding Dr.		+1-508-287-4781
-		Carlisle, MA 01741
-		USA
-
-	=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
-	/*
-	 * Copyright (c) 1990, 1993, 1994, 1995, 1996, 1997
-	 *	Sleepycat Software.  All rights reserved.
-	 *
-	 * Redistribution and use in source and binary forms, with or without
-	 * modification, are permitted provided that the following conditions
-	 * are met:
-	 * 1. Redistributions of source code must retain the above copyright
-	 *    notice, this list of conditions and the following disclaimer.
-	 * 2. Redistributions in binary form must reproduce the above copyright
-	 *    notice, this list of conditions and the following disclaimer in
-	 *    the documentation and/or other materials provided with the
-	 *    distribution.
-	 * 3. Redistributions in any form must be accompanied by information on
-	 *    how to obtain complete source code for the DB software and any
-	 *    accompanying software that uses the DB software.  The source code
-	 *    must either be included in the distribution or be available for
-	 *    no more than the cost of distribution plus a nominal fee, and
-	 *    must be freely redistributable under reasonable conditions.  For
-	 *    an executable file, complete source code means the source code
-	 *    for all modules it contains.  It does not mean source code for
-	 *    modules or files that typically accompany the operating system
-	 *    on which the executable file runs, e.g., standard library
-	 *    modules or system header files.
-	 *
-	 * THIS SOFTWARE IS PROVIDED BY SLEEPYCAT SOFTWARE ``AS IS'' AND
-	 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
-	 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-	 * PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL SLEEPYCAT
-	 * SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-	 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
-	 * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-	 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-	 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
-	 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
-	 * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-	 * SUCH DAMAGE.
-	 */
-	/*
-	 * Copyright (c) 1990, 1993, 1994, 1995
-	 *	The Regents of the University of California.  All rights
-	 *      reserved.
-	 *
-	 * Redistribution and use in source and binary forms, with or without
-	 * modification, are permitted provided that the following conditions
-	 * are met:
-	 * 1. Redistributions of source code must retain the above copyright
-	 *    notice, this list of conditions and the following disclaimer.
-	 * 2. Redistributions in binary form must reproduce the above copyright
-	 *    notice, this list of conditions and the following disclaimer in
-	 *    the documentation and/or other materials provided with the
-	 *    distribution.
-	 * 3. All advertising materials mentioning features or use of this
-	 *    software must display the following acknowledgement:
-	 *	This product includes software developed by the University of
-	 *	California, Berkeley and its contributors.
-	 * 4. Neither the name of the University nor the names of its
-	 *    contributors may be used to endorse or promote products derived
-	 *    from this software without specific prior written permission.
-	 *
-	 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS''
-	 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-	 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-	 * PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS
-	 * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-	 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-	 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-	 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
-	 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-	 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
-	 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-	 * THE POSSIBILITY OF SUCH DAMAGE.
-	 */
-	/*
-	 * Copyright (c) 1995, 1996
-	 *	The President and Fellows of Harvard University.  All rights
-	 *      reserved.
-	 *
-	 * Redistribution and use in source and binary forms, with or without
-	 * modification, are permitted provided that the following conditions
-	 * are met:
-	 * 1. Redistributions of source code must retain the above copyright
-	 *    notice, this list of conditions and the following disclaimer.
-	 * 2. Redistributions in binary form must reproduce the above copyright
-	 *    notice, this list of conditions and the following disclaimer in
-	 *    the documentation and/or other materials provided with the
-	 *    distribution.
-	 * 3. All advertising materials mentioning features or use of this
-	 *    software must display the following acknowledgement:
-	 *	This product includes software developed by Harvard University
-	 *	and its contributors.
-	 * 4. Neither the name of the University nor the names of its
-	 *    contributors may be used to endorse or promote products derived
- 	 *    from this software without specific prior written permission.
-	 *
-	 * THIS SOFTWARE IS PROVIDED BY HARVARD AND ITS CONTRIBUTORS ``AS IS''
-	 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-	 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-	 * PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL HARVARD OR
-	 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-	 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-	 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-	 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
-	 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-	 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-	 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-	 * POSSIBILITY OF SUCH DAMAGE.
-	 */