aboutsummaryrefslogtreecommitdiff
path: root/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL103
1 files changed, 49 insertions, 54 deletions
diff --git a/INSTALL b/INSTALL
index 5458714e..54caf7c1 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,19 +1,13 @@
1Installation Instructions 1Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
2************************* 2Foundation, Inc.
3 3
4Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, 4 This file is free documentation; the Free Software Foundation gives
52006 Free Software Foundation, Inc.
6
7This file is free documentation; the Free Software Foundation gives
8unlimited permission to copy, distribute and modify it. 5unlimited permission to copy, distribute and modify it.
9 6
10Basic Installation 7Basic Installation
11================== 8==================
12 9
13Briefly, the shell commands `./configure; make; make install' should 10 These are generic installation instructions.
14configure, build, and install this package. The following
15more-detailed instructions are generic; see the `README' file for
16instructions specific to this package.
17 11
18 The `configure' shell script attempts to guess correct values for 12 The `configure' shell script attempts to guess correct values for
19various system-dependent variables used during compilation. It uses 13various system-dependent variables used during compilation. It uses
@@ -26,9 +20,9 @@ debugging `configure').
26 20
27 It can also use an optional file (typically called `config.cache' 21 It can also use an optional file (typically called `config.cache'
28and enabled with `--cache-file=config.cache' or simply `-C') that saves 22and enabled with `--cache-file=config.cache' or simply `-C') that saves
29the results of its tests to speed up reconfiguring. Caching is 23the results of its tests to speed up reconfiguring. (Caching is
30disabled by default to prevent problems with accidental use of stale 24disabled by default to prevent problems with accidental use of stale
31cache files. 25cache files.)
32 26
33 If you need to do unusual things to compile the package, please try 27 If you need to do unusual things to compile the package, please try
34to figure out how `configure' could check whether to do them, and mail 28to figure out how `configure' could check whether to do them, and mail
@@ -38,17 +32,20 @@ some point `config.cache' contains results you don't want to keep, you
38may remove or edit it. 32may remove or edit it.
39 33
40 The file `configure.ac' (or `configure.in') is used to create 34 The file `configure.ac' (or `configure.in') is used to create
41`configure' by a program called `autoconf'. You need `configure.ac' if 35`configure' by a program called `autoconf'. You only need
42you want to change it or regenerate `configure' using a newer version 36`configure.ac' if you want to change it or regenerate `configure' using
43of `autoconf'. 37a newer version of `autoconf'.
44 38
45The simplest way to compile this package is: 39The simplest way to compile this package is:
46 40
47 1. `cd' to the directory containing the package's source code and type 41 1. `cd' to the directory containing the package's source code and type
48 `./configure' to configure the package for your system. 42 `./configure' to configure the package for your system. If you're
43 using `csh' on an old version of System V, you might need to type
44 `sh ./configure' instead to prevent `csh' from trying to execute
45 `configure' itself.
49 46
50 Running `configure' might take a while. While running, it prints 47 Running `configure' takes awhile. While running, it prints some
51 some messages telling which features it is checking for. 48 messages telling which features it is checking for.
52 49
53 2. Type `make' to compile the package. 50 2. Type `make' to compile the package.
54 51
@@ -70,49 +67,51 @@ The simplest way to compile this package is:
70Compilers and Options 67Compilers and Options
71===================== 68=====================
72 69
73Some systems require unusual options for compilation or linking that the 70 Some systems require unusual options for compilation or linking that
74`configure' script does not know about. Run `./configure --help' for 71the `configure' script does not know about. Run `./configure --help'
75details on some of the pertinent environment variables. 72for details on some of the pertinent environment variables.
76 73
77 You can give `configure' initial values for configuration parameters 74 You can give `configure' initial values for configuration parameters
78by setting variables in the command line or in the environment. Here 75by setting variables in the command line or in the environment. Here
79is an example: 76is an example:
80 77
81 ./configure CC=c99 CFLAGS=-g LIBS=-lposix 78 ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
82 79
83 *Note Defining Variables::, for more details. 80 *Note Defining Variables::, for more details.
84 81
85Compiling For Multiple Architectures 82Compiling For Multiple Architectures
86==================================== 83====================================
87 84
88You can compile the package for more than one kind of computer at the 85 You can compile the package for more than one kind of computer at the
89same time, by placing the object files for each architecture in their 86same time, by placing the object files for each architecture in their
90own directory. To do this, you can use GNU `make'. `cd' to the 87own directory. To do this, you must use a version of `make' that
88supports the `VPATH' variable, such as GNU `make'. `cd' to the
91directory where you want the object files and executables to go and run 89directory where you want the object files and executables to go and run
92the `configure' script. `configure' automatically checks for the 90the `configure' script. `configure' automatically checks for the
93source code in the directory that `configure' is in and in `..'. 91source code in the directory that `configure' is in and in `..'.
94 92
95 With a non-GNU `make', it is safer to compile the package for one 93 If you have to use a `make' that does not support the `VPATH'
96architecture at a time in the source code directory. After you have 94variable, you have to compile the package for one architecture at a
97installed the package for one architecture, use `make distclean' before 95time in the source code directory. After you have installed the
98reconfiguring for another architecture. 96package for one architecture, use `make distclean' before reconfiguring
97for another architecture.
99 98
100Installation Names 99Installation Names
101================== 100==================
102 101
103By default, `make install' installs the package's commands under 102 By default, `make install' will install the package's files in
104`/usr/local/bin', include files under `/usr/local/include', etc. You 103`/usr/local/bin', `/usr/local/man', etc. You can specify an
105can specify an installation prefix other than `/usr/local' by giving 104installation prefix other than `/usr/local' by giving `configure' the
106`configure' the option `--prefix=PREFIX'. 105option `--prefix=PATH'.
107 106
108 You can specify separate installation prefixes for 107 You can specify separate installation prefixes for
109architecture-specific files and architecture-independent files. If you 108architecture-specific files and architecture-independent files. If you
110pass the option `--exec-prefix=PREFIX' to `configure', the package uses 109give `configure' the option `--exec-prefix=PATH', the package will use
111PREFIX as the prefix for installing programs and libraries. 110PATH as the prefix for installing programs and libraries.
112Documentation and other data files still use the regular prefix. 111Documentation and other data files will still use the regular prefix.
113 112
114 In addition, if you use an unusual directory layout you can give 113 In addition, if you use an unusual directory layout you can give
115options like `--bindir=DIR' to specify different values for particular 114options like `--bindir=PATH' to specify different values for particular
116kinds of files. Run `configure --help' for a list of the directories 115kinds of files. Run `configure --help' for a list of the directories
117you can set and what kinds of files go in them. 116you can set and what kinds of files go in them.
118 117
@@ -123,7 +122,7 @@ option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
123Optional Features 122Optional Features
124================= 123=================
125 124
126Some packages pay attention to `--enable-FEATURE' options to 125 Some packages pay attention to `--enable-FEATURE' options to
127`configure', where FEATURE indicates an optional part of the package. 126`configure', where FEATURE indicates an optional part of the package.
128They may also pay attention to `--with-PACKAGE' options, where PACKAGE 127They may also pay attention to `--with-PACKAGE' options, where PACKAGE
129is something like `gnu-as' or `x' (for the X Window System). The 128is something like `gnu-as' or `x' (for the X Window System). The
@@ -138,11 +137,11 @@ you can use the `configure' options `--x-includes=DIR' and
138Specifying the System Type 137Specifying the System Type
139========================== 138==========================
140 139
141There may be some features `configure' cannot figure out automatically, 140 There may be some features `configure' cannot figure out
142but needs to determine by the type of machine the package will run on. 141automatically, but needs to determine by the type of machine the package
143Usually, assuming the package is built to be run on the _same_ 142will run on. Usually, assuming the package is built to be run on the
144architectures, `configure' can figure that out, but if it prints a 143_same_ architectures, `configure' can figure that out, but if it prints
145message saying it cannot guess the machine type, give it the 144a message saying it cannot guess the machine type, give it the
146`--build=TYPE' option. TYPE can either be a short name for the system 145`--build=TYPE' option. TYPE can either be a short name for the system
147type, such as `sun4', or a canonical name which has the form: 146type, such as `sun4', or a canonical name which has the form:
148 147
@@ -157,7 +156,7 @@ where SYSTEM can have one of these forms:
157need to know the machine type. 156need to know the machine type.
158 157
159 If you are _building_ compiler tools for cross-compiling, you should 158 If you are _building_ compiler tools for cross-compiling, you should
160use the option `--target=TYPE' to select the type of system they will 159use the `--target=TYPE' option to select the type of system they will
161produce code for. 160produce code for.
162 161
163 If you want to _use_ a cross compiler, that generates code for a 162 If you want to _use_ a cross compiler, that generates code for a
@@ -168,9 +167,9 @@ eventually be run) with `--host=TYPE'.
168Sharing Defaults 167Sharing Defaults
169================ 168================
170 169
171If you want to set default values for `configure' scripts to share, you 170 If you want to set default values for `configure' scripts to share,
172can create a site shell script called `config.site' that gives default 171you can create a site shell script called `config.site' that gives
173values for variables like `CC', `cache_file', and `prefix'. 172default values for variables like `CC', `cache_file', and `prefix'.
174`configure' looks for `PREFIX/share/config.site' if it exists, then 173`configure' looks for `PREFIX/share/config.site' if it exists, then
175`PREFIX/etc/config.site' if it exists. Or, you can set the 174`PREFIX/etc/config.site' if it exists. Or, you can set the
176`CONFIG_SITE' environment variable to the location of the site script. 175`CONFIG_SITE' environment variable to the location of the site script.
@@ -179,7 +178,7 @@ A warning: not all `configure' scripts look for a site script.
179Defining Variables 178Defining Variables
180================== 179==================
181 180
182Variables not defined in a site shell script can be set in the 181 Variables not defined in a site shell script can be set in the
183environment passed to `configure'. However, some packages may run 182environment passed to `configure'. However, some packages may run
184configure again during the build, and the customized values of these 183configure again during the build, and the customized values of these
185variables may be lost. In order to avoid this problem, you should set 184variables may be lost. In order to avoid this problem, you should set
@@ -187,18 +186,14 @@ them in the `configure' command line, using `VAR=value'. For example:
187 186
188 ./configure CC=/usr/local2/bin/gcc 187 ./configure CC=/usr/local2/bin/gcc
189 188
190causes the specified `gcc' to be used as the C compiler (unless it is 189will cause the specified gcc to be used as the C compiler (unless it is
191overridden in the site shell script). 190overridden in the site shell script).
192 191
193Unfortunately, this technique does not work for `CONFIG_SHELL' due to
194an Autoconf bug. Until the bug is fixed you can use this workaround:
195
196 CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
197
198`configure' Invocation 192`configure' Invocation
199====================== 193======================
200 194
201`configure' recognizes the following options to control how it operates. 195 `configure' recognizes the following options to control how it
196operates.
202 197
203`--help' 198`--help'
204`-h' 199`-h'