Search
lxdream.org :: lxdream/INSTALL
lxdream 0.9.1
released Jun 29
Download Now
filename INSTALL
changeset 179:18dacd91aa73
author nkeynes
date Sat Aug 05 00:18:21 2006 +0000 (17 years ago)
permissions -rw-r--r--
last change Add error lines to tests with incomplete polys
Split clip tests to separate data file
Add tests for cmd bit 23 ("use list size field")
file annotate diff log raw
nkeynes@179
     1
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
nkeynes@179
     2
Foundation, Inc.
nkeynes@179
     3
nkeynes@179
     4
   This file is free documentation; the Free Software Foundation gives
nkeynes@179
     5
unlimited permission to copy, distribute and modify it.
nkeynes@179
     6
nkeynes@179
     7
Basic Installation
nkeynes@179
     8
==================
nkeynes@179
     9
nkeynes@179
    10
   These are generic installation instructions.
nkeynes@179
    11
nkeynes@179
    12
   The `configure' shell script attempts to guess correct values for
nkeynes@179
    13
various system-dependent variables used during compilation.  It uses
nkeynes@179
    14
those values to create a `Makefile' in each directory of the package.
nkeynes@179
    15
It may also create one or more `.h' files containing system-dependent
nkeynes@179
    16
definitions.  Finally, it creates a shell script `config.status' that
nkeynes@179
    17
you can run in the future to recreate the current configuration, and a
nkeynes@179
    18
file `config.log' containing compiler output (useful mainly for
nkeynes@179
    19
debugging `configure').
nkeynes@179
    20
nkeynes@179
    21
   It can also use an optional file (typically called `config.cache'
nkeynes@179
    22
and enabled with `--cache-file=config.cache' or simply `-C') that saves
nkeynes@179
    23
the results of its tests to speed up reconfiguring.  (Caching is
nkeynes@179
    24
disabled by default to prevent problems with accidental use of stale
nkeynes@179
    25
cache files.)
nkeynes@179
    26
nkeynes@179
    27
   If you need to do unusual things to compile the package, please try
nkeynes@179
    28
to figure out how `configure' could check whether to do them, and mail
nkeynes@179
    29
diffs or instructions to the address given in the `README' so they can
nkeynes@179
    30
be considered for the next release.  If you are using the cache, and at
nkeynes@179
    31
some point `config.cache' contains results you don't want to keep, you
nkeynes@179
    32
may remove or edit it.
nkeynes@179
    33
nkeynes@179
    34
   The file `configure.ac' (or `configure.in') is used to create
nkeynes@179
    35
`configure' by a program called `autoconf'.  You only need
nkeynes@179
    36
`configure.ac' if you want to change it or regenerate `configure' using
nkeynes@179
    37
a newer version of `autoconf'.
nkeynes@179
    38
nkeynes@179
    39
The simplest way to compile this package is:
nkeynes@179
    40
nkeynes@179
    41
  1. `cd' to the directory containing the package's source code and type
nkeynes@179
    42
     `./configure' to configure the package for your system.  If you're
nkeynes@179
    43
     using `csh' on an old version of System V, you might need to type
nkeynes@179
    44
     `sh ./configure' instead to prevent `csh' from trying to execute
nkeynes@179
    45
     `configure' itself.
nkeynes@179
    46
nkeynes@179
    47
     Running `configure' takes awhile.  While running, it prints some
nkeynes@179
    48
     messages telling which features it is checking for.
nkeynes@179
    49
nkeynes@179
    50
  2. Type `make' to compile the package.
nkeynes@179
    51
nkeynes@179
    52
  3. Optionally, type `make check' to run any self-tests that come with
nkeynes@179
    53
     the package.
nkeynes@179
    54
nkeynes@179
    55
  4. Type `make install' to install the programs and any data files and
nkeynes@179
    56
     documentation.
nkeynes@179
    57
nkeynes@179
    58
  5. You can remove the program binaries and object files from the
nkeynes@179
    59
     source code directory by typing `make clean'.  To also remove the
nkeynes@179
    60
     files that `configure' created (so you can compile the package for
nkeynes@179
    61
     a different kind of computer), type `make distclean'.  There is
nkeynes@179
    62
     also a `make maintainer-clean' target, but that is intended mainly
nkeynes@179
    63
     for the package's developers.  If you use it, you may have to get
nkeynes@179
    64
     all sorts of other programs in order to regenerate files that came
nkeynes@179
    65
     with the distribution.
nkeynes@179
    66
nkeynes@179
    67
Compilers and Options
nkeynes@179
    68
=====================
nkeynes@179
    69
nkeynes@179
    70
   Some systems require unusual options for compilation or linking that
nkeynes@179
    71
the `configure' script does not know about.  Run `./configure --help'
nkeynes@179
    72
for details on some of the pertinent environment variables.
nkeynes@179
    73
nkeynes@179
    74
   You can give `configure' initial values for configuration parameters
nkeynes@179
    75
by setting variables in the command line or in the environment.  Here
nkeynes@179
    76
is an example:
nkeynes@179
    77
nkeynes@179
    78
     ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
nkeynes@179
    79
nkeynes@179
    80
   *Note Defining Variables::, for more details.
nkeynes@179
    81
nkeynes@179
    82
Compiling For Multiple Architectures
nkeynes@179
    83
====================================
nkeynes@179
    84
nkeynes@179
    85
   You can compile the package for more than one kind of computer at the
nkeynes@179
    86
same time, by placing the object files for each architecture in their
nkeynes@179
    87
own directory.  To do this, you must use a version of `make' that
nkeynes@179
    88
supports the `VPATH' variable, such as GNU `make'.  `cd' to the
nkeynes@179
    89
directory where you want the object files and executables to go and run
nkeynes@179
    90
the `configure' script.  `configure' automatically checks for the
nkeynes@179
    91
source code in the directory that `configure' is in and in `..'.
nkeynes@179
    92
nkeynes@179
    93
   If you have to use a `make' that does not support the `VPATH'
nkeynes@179
    94
variable, you have to compile the package for one architecture at a
nkeynes@179
    95
time in the source code directory.  After you have installed the
nkeynes@179
    96
package for one architecture, use `make distclean' before reconfiguring
nkeynes@179
    97
for another architecture.
nkeynes@179
    98
nkeynes@179
    99
Installation Names
nkeynes@179
   100
==================
nkeynes@179
   101
nkeynes@179
   102
   By default, `make install' will install the package's files in
nkeynes@179
   103
`/usr/local/bin', `/usr/local/man', etc.  You can specify an
nkeynes@179
   104
installation prefix other than `/usr/local' by giving `configure' the
nkeynes@179
   105
option `--prefix=PATH'.
nkeynes@179
   106
nkeynes@179
   107
   You can specify separate installation prefixes for
nkeynes@179
   108
architecture-specific files and architecture-independent files.  If you
nkeynes@179
   109
give `configure' the option `--exec-prefix=PATH', the package will use
nkeynes@179
   110
PATH as the prefix for installing programs and libraries.
nkeynes@179
   111
Documentation and other data files will still use the regular prefix.
nkeynes@179
   112
nkeynes@179
   113
   In addition, if you use an unusual directory layout you can give
nkeynes@179
   114
options like `--bindir=PATH' to specify different values for particular
nkeynes@179
   115
kinds of files.  Run `configure --help' for a list of the directories
nkeynes@179
   116
you can set and what kinds of files go in them.
nkeynes@179
   117
nkeynes@179
   118
   If the package supports it, you can cause programs to be installed
nkeynes@179
   119
with an extra prefix or suffix on their names by giving `configure' the
nkeynes@179
   120
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
nkeynes@179
   121
nkeynes@179
   122
Optional Features
nkeynes@179
   123
=================
nkeynes@179
   124
nkeynes@179
   125
   Some packages pay attention to `--enable-FEATURE' options to
nkeynes@179
   126
`configure', where FEATURE indicates an optional part of the package.
nkeynes@179
   127
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
nkeynes@179
   128
is something like `gnu-as' or `x' (for the X Window System).  The
nkeynes@179
   129
`README' should mention any `--enable-' and `--with-' options that the
nkeynes@179
   130
package recognizes.
nkeynes@179
   131
nkeynes@179
   132
   For packages that use the X Window System, `configure' can usually
nkeynes@179
   133
find the X include and library files automatically, but if it doesn't,
nkeynes@179
   134
you can use the `configure' options `--x-includes=DIR' and
nkeynes@179
   135
`--x-libraries=DIR' to specify their locations.
nkeynes@179
   136
nkeynes@179
   137
Specifying the System Type
nkeynes@179
   138
==========================
nkeynes@179
   139
nkeynes@179
   140
   There may be some features `configure' cannot figure out
nkeynes@179
   141
automatically, but needs to determine by the type of machine the package
nkeynes@179
   142
will run on.  Usually, assuming the package is built to be run on the
nkeynes@179
   143
_same_ architectures, `configure' can figure that out, but if it prints
nkeynes@179
   144
a message saying it cannot guess the machine type, give it the
nkeynes@179
   145
`--build=TYPE' option.  TYPE can either be a short name for the system
nkeynes@179
   146
type, such as `sun4', or a canonical name which has the form:
nkeynes@179
   147
nkeynes@179
   148
     CPU-COMPANY-SYSTEM
nkeynes@179
   149
nkeynes@179
   150
where SYSTEM can have one of these forms:
nkeynes@179
   151
nkeynes@179
   152
     OS KERNEL-OS
nkeynes@179
   153
nkeynes@179
   154
   See the file `config.sub' for the possible values of each field.  If
nkeynes@179
   155
`config.sub' isn't included in this package, then this package doesn't
nkeynes@179
   156
need to know the machine type.
nkeynes@179
   157
nkeynes@179
   158
   If you are _building_ compiler tools for cross-compiling, you should
nkeynes@179
   159
use the `--target=TYPE' option to select the type of system they will
nkeynes@179
   160
produce code for.
nkeynes@179
   161
nkeynes@179
   162
   If you want to _use_ a cross compiler, that generates code for a
nkeynes@179
   163
platform different from the build platform, you should specify the
nkeynes@179
   164
"host" platform (i.e., that on which the generated programs will
nkeynes@179
   165
eventually be run) with `--host=TYPE'.
nkeynes@179
   166
nkeynes@179
   167
Sharing Defaults
nkeynes@179
   168
================
nkeynes@179
   169
nkeynes@179
   170
   If you want to set default values for `configure' scripts to share,
nkeynes@179
   171
you can create a site shell script called `config.site' that gives
nkeynes@179
   172
default values for variables like `CC', `cache_file', and `prefix'.
nkeynes@179
   173
`configure' looks for `PREFIX/share/config.site' if it exists, then
nkeynes@179
   174
`PREFIX/etc/config.site' if it exists.  Or, you can set the
nkeynes@179
   175
`CONFIG_SITE' environment variable to the location of the site script.
nkeynes@179
   176
A warning: not all `configure' scripts look for a site script.
nkeynes@179
   177
nkeynes@179
   178
Defining Variables
nkeynes@179
   179
==================
nkeynes@179
   180
nkeynes@179
   181
   Variables not defined in a site shell script can be set in the
nkeynes@179
   182
environment passed to `configure'.  However, some packages may run
nkeynes@179
   183
configure again during the build, and the customized values of these
nkeynes@179
   184
variables may be lost.  In order to avoid this problem, you should set
nkeynes@179
   185
them in the `configure' command line, using `VAR=value'.  For example:
nkeynes@179
   186
nkeynes@179
   187
     ./configure CC=/usr/local2/bin/gcc
nkeynes@179
   188
nkeynes@179
   189
will cause the specified gcc to be used as the C compiler (unless it is
nkeynes@179
   190
overridden in the site shell script).
nkeynes@179
   191
nkeynes@179
   192
`configure' Invocation
nkeynes@179
   193
======================
nkeynes@179
   194
nkeynes@179
   195
   `configure' recognizes the following options to control how it
nkeynes@179
   196
operates.
nkeynes@179
   197
nkeynes@179
   198
`--help'
nkeynes@179
   199
`-h'
nkeynes@179
   200
     Print a summary of the options to `configure', and exit.
nkeynes@179
   201
nkeynes@179
   202
`--version'
nkeynes@179
   203
`-V'
nkeynes@179
   204
     Print the version of Autoconf used to generate the `configure'
nkeynes@179
   205
     script, and exit.
nkeynes@179
   206
nkeynes@179
   207
`--cache-file=FILE'
nkeynes@179
   208
     Enable the cache: use and save the results of the tests in FILE,
nkeynes@179
   209
     traditionally `config.cache'.  FILE defaults to `/dev/null' to
nkeynes@179
   210
     disable caching.
nkeynes@179
   211
nkeynes@179
   212
`--config-cache'
nkeynes@179
   213
`-C'
nkeynes@179
   214
     Alias for `--cache-file=config.cache'.
nkeynes@179
   215
nkeynes@179
   216
`--quiet'
nkeynes@179
   217
`--silent'
nkeynes@179
   218
`-q'
nkeynes@179
   219
     Do not print messages saying which checks are being made.  To
nkeynes@179
   220
     suppress all normal output, redirect it to `/dev/null' (any error
nkeynes@179
   221
     messages will still be shown).
nkeynes@179
   222
nkeynes@179
   223
`--srcdir=DIR'
nkeynes@179
   224
     Look for the package's source code in directory DIR.  Usually
nkeynes@179
   225
     `configure' can determine that directory automatically.
nkeynes@179
   226
nkeynes@179
   227
`configure' also accepts some other, not widely useful, options.  Run
nkeynes@179
   228
`configure --help' for more details.
nkeynes@179
   229
.