aboutsummaryrefslogtreecommitdiff
path: root/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL107
1 files changed, 86 insertions, 21 deletions
diff --git a/INSTALL b/INSTALL
index d3c5b40a9..2550dab75 100644
--- a/INSTALL
+++ b/INSTALL
@@ -2,15 +2,15 @@ Installation Instructions
2************************* 2*************************
3 3
4Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, 4Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
52006, 2007 Free Software Foundation, Inc. 52006, 2007, 2008, 2009 Free Software Foundation, Inc.
6 6
7This file is free documentation; the Free Software Foundation gives 7 This file is free documentation; the Free Software Foundation gives
8unlimited permission to copy, distribute and modify it. 8unlimited permission to copy, distribute and modify it.
9 9
10Basic Installation 10Basic Installation
11================== 11==================
12 12
13Briefly, the shell commands `./configure; make; make install' should 13 Briefly, the shell commands `./configure; make; make install' should
14configure, build, and install this package. The following 14configure, build, and install this package. The following
15more-detailed instructions are generic; see the `README' file for 15more-detailed instructions are generic; see the `README' file for
16instructions specific to this package. 16instructions specific to this package.
@@ -73,9 +73,9 @@ The simplest way to compile this package is:
73Compilers and Options 73Compilers and Options
74===================== 74=====================
75 75
76Some systems require unusual options for compilation or linking that the 76 Some systems require unusual options for compilation or linking that
77`configure' script does not know about. Run `./configure --help' for 77the `configure' script does not know about. Run `./configure --help'
78details on some of the pertinent environment variables. 78for details on some of the pertinent environment variables.
79 79
80 You can give `configure' initial values for configuration parameters 80 You can give `configure' initial values for configuration parameters
81by setting variables in the command line or in the environment. Here 81by setting variables in the command line or in the environment. Here
@@ -88,7 +88,7 @@ is an example:
88Compiling For Multiple Architectures 88Compiling For Multiple Architectures
89==================================== 89====================================
90 90
91You can compile the package for more than one kind of computer at the 91 You can compile the package for more than one kind of computer at the
92same time, by placing the object files for each architecture in their 92same time, by placing the object files for each architecture in their
93own directory. To do this, you can use GNU `make'. `cd' to the 93own directory. To do this, you can use GNU `make'. `cd' to the
94directory where you want the object files and executables to go and run 94directory where you want the object files and executables to go and run
@@ -100,10 +100,24 @@ architecture at a time in the source code directory. After you have
100installed the package for one architecture, use `make distclean' before 100installed the package for one architecture, use `make distclean' before
101reconfiguring for another architecture. 101reconfiguring for another architecture.
102 102
103 On MacOS X 10.5 and later systems, you can create libraries and
104executables that work on multiple system types--known as "fat" or
105"universal" binaries--by specifying multiple `-arch' options to the
106compiler but only a single `-arch' option to the preprocessor. Like
107this:
108
109 ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
110 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
111 CPP="gcc -E" CXXCPP="g++ -E"
112
113 This is not guaranteed to produce working output in all cases, you
114may have to build one architecture at a time and combine the results
115using the `lipo' tool if you have problems.
116
103Installation Names 117Installation Names
104================== 118==================
105 119
106By default, `make install' installs the package's commands under 120 By default, `make install' installs the package's commands under
107`/usr/local/bin', include files under `/usr/local/include', etc. You 121`/usr/local/bin', include files under `/usr/local/include', etc. You
108can specify an installation prefix other than `/usr/local' by giving 122can specify an installation prefix other than `/usr/local' by giving
109`configure' the option `--prefix=PREFIX'. 123`configure' the option `--prefix=PREFIX'.
@@ -126,7 +140,7 @@ option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
126Optional Features 140Optional Features
127================= 141=================
128 142
129Some packages pay attention to `--enable-FEATURE' options to 143 Some packages pay attention to `--enable-FEATURE' options to
130`configure', where FEATURE indicates an optional part of the package. 144`configure', where FEATURE indicates an optional part of the package.
131They may also pay attention to `--with-PACKAGE' options, where PACKAGE 145They may also pay attention to `--with-PACKAGE' options, where PACKAGE
132is something like `gnu-as' or `x' (for the X Window System). The 146is something like `gnu-as' or `x' (for the X Window System). The
@@ -138,14 +152,46 @@ find the X include and library files automatically, but if it doesn't,
138you can use the `configure' options `--x-includes=DIR' and 152you can use the `configure' options `--x-includes=DIR' and
139`--x-libraries=DIR' to specify their locations. 153`--x-libraries=DIR' to specify their locations.
140 154
155Particular systems
156==================
157
158 On HP-UX, the default C compiler is not ANSI C compatible. If GNU
159CC is not installed, it is recommended to use the following options in
160order to use an ANSI C compiler:
161
162 ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
163
164and if that doesn't work, install pre-built binaries of GCC for HP-UX.
165
166 On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
167parse its `<wchar.h>' header file. The option `-nodtk' can be used as
168a workaround. If GNU CC is not installed, it is therefore recommended
169to try
170
171 ./configure CC="cc"
172
173and if that doesn't work, try
174
175 ./configure CC="cc -nodtk"
176
177 On Solaris, don't put `/usr/ucb' early in your `PATH'. This
178directory contains several dysfunctional programs; working variants of
179these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
180in your `PATH', put it _after_ `/usr/bin'.
181
182 On Haiku, software installed for all users goes in `/boot/common',
183not `/usr/local'. It is recommended to use the following options:
184
185 ./configure --prefix=/boot/common
186
141Specifying the System Type 187Specifying the System Type
142========================== 188==========================
143 189
144There may be some features `configure' cannot figure out automatically, 190 There may be some features `configure' cannot figure out
145but needs to determine by the type of machine the package will run on. 191automatically, but needs to determine by the type of machine the package
146Usually, assuming the package is built to be run on the _same_ 192will run on. Usually, assuming the package is built to be run on the
147architectures, `configure' can figure that out, but if it prints a 193_same_ architectures, `configure' can figure that out, but if it prints
148message saying it cannot guess the machine type, give it the 194a message saying it cannot guess the machine type, give it the
149`--build=TYPE' option. TYPE can either be a short name for the system 195`--build=TYPE' option. TYPE can either be a short name for the system
150type, such as `sun4', or a canonical name which has the form: 196type, such as `sun4', or a canonical name which has the form:
151 197
@@ -153,7 +199,8 @@ type, such as `sun4', or a canonical name which has the form:
153 199
154where SYSTEM can have one of these forms: 200where SYSTEM can have one of these forms:
155 201
156 OS KERNEL-OS 202 OS
203 KERNEL-OS
157 204
158 See the file `config.sub' for the possible values of each field. If 205 See the file `config.sub' for the possible values of each field. If
159`config.sub' isn't included in this package, then this package doesn't 206`config.sub' isn't included in this package, then this package doesn't
@@ -171,9 +218,9 @@ eventually be run) with `--host=TYPE'.
171Sharing Defaults 218Sharing Defaults
172================ 219================
173 220
174If you want to set default values for `configure' scripts to share, you 221 If you want to set default values for `configure' scripts to share,
175can create a site shell script called `config.site' that gives default 222you can create a site shell script called `config.site' that gives
176values for variables like `CC', `cache_file', and `prefix'. 223default values for variables like `CC', `cache_file', and `prefix'.
177`configure' looks for `PREFIX/share/config.site' if it exists, then 224`configure' looks for `PREFIX/share/config.site' if it exists, then
178`PREFIX/etc/config.site' if it exists. Or, you can set the 225`PREFIX/etc/config.site' if it exists. Or, you can set the
179`CONFIG_SITE' environment variable to the location of the site script. 226`CONFIG_SITE' environment variable to the location of the site script.
@@ -182,7 +229,7 @@ A warning: not all `configure' scripts look for a site script.
182Defining Variables 229Defining Variables
183================== 230==================
184 231
185Variables not defined in a site shell script can be set in the 232 Variables not defined in a site shell script can be set in the
186environment passed to `configure'. However, some packages may run 233environment passed to `configure'. However, some packages may run
187configure again during the build, and the customized values of these 234configure again during the build, and the customized values of these
188variables may be lost. In order to avoid this problem, you should set 235variables may be lost. In order to avoid this problem, you should set
@@ -201,11 +248,19 @@ an Autoconf bug. Until the bug is fixed you can use this workaround:
201`configure' Invocation 248`configure' Invocation
202====================== 249======================
203 250
204`configure' recognizes the following options to control how it operates. 251 `configure' recognizes the following options to control how it
252operates.
205 253
206`--help' 254`--help'
207`-h' 255`-h'
208 Print a summary of the options to `configure', and exit. 256 Print a summary of all of the options to `configure', and exit.
257
258`--help=short'
259`--help=recursive'
260 Print a summary of the options unique to this package's
261 `configure', and exit. The `short' variant lists options used
262 only in the top level, while the `recursive' variant lists options
263 also present in any nested packages.
209 264
210`--version' 265`--version'
211`-V' 266`-V'
@@ -232,6 +287,16 @@ an Autoconf bug. Until the bug is fixed you can use this workaround:
232 Look for the package's source code in directory DIR. Usually 287 Look for the package's source code in directory DIR. Usually
233 `configure' can determine that directory automatically. 288 `configure' can determine that directory automatically.
234 289
290`--prefix=DIR'
291 Use DIR as the installation prefix. *Note Installation Names::
292 for more details, including other options available for fine-tuning
293 the installation locations.
294
295`--no-create'
296`-n'
297 Run the configure checks, but stop before creating any output
298 files.
299
235`configure' also accepts some other, not widely useful, options. Run 300`configure' also accepts some other, not widely useful, options. Run
236`configure --help' for more details. 301`configure --help' for more details.
237 302