aboutsummaryrefslogtreecommitdiff
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.
- */