ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/INSTALL
Revision: 1.6
Committed: Sat Nov 24 19:03:15 2007 UTC (16 years, 6 months ago) by ayin
Branch: MAIN
CVS Tags: rxvt-unicode-rel-9_29, rxvt-unicode-rel-9_26, rxvt-unicode-rel-9_25, rxvt-unicode-rel-9_22, rxvt-unicode-rel-9_20, rxvt-unicode-rel-9_21, rel-9_14, rel-9_11, rel-9_10, rel-9_12, rxvt-unicode-rel-9_19, rxvt-unicode-rel-9_18, rxvt-unicode-rel-9_17, rxvt-unicode-rel-9_16, rxvt-unicode-rel-9_15, rel-9_0, rel-8_8, rel-8_9, rxvt-unicode-rel-9_30, rel-9_09, rel-9_02, rel-9_01, rel-9_06, rel-9_07, rel-9_05, HEAD
Changes since 1.5: +59 -53 lines
Log Message:
*** empty log message ***

File Contents

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