1 | Generic Instructions for Building Auto-Configured Packages |
---|
2 | ========================================================== |
---|
3 | |
---|
4 | |
---|
5 | To compile this package: |
---|
6 | |
---|
7 | 1. Configure the package for your system. In the directory that this |
---|
8 | file is in, type `./configure'. If you're using `csh' on an old |
---|
9 | version of System V, you might need to type `sh configure' instead to |
---|
10 | prevent `csh' from trying to execute `configure' itself. |
---|
11 | |
---|
12 | The `configure' shell script attempts to guess correct values for |
---|
13 | various system-dependent variables used during compilation, and |
---|
14 | creates the Makefile(s) (one in each subdirectory of the source |
---|
15 | directory). In some packages it creates a C header file containing |
---|
16 | system-dependent definitions. It also creates a file `config.status' |
---|
17 | that you can run in the future to recreate the current configuration. |
---|
18 | Running `configure' takes a minute or two. |
---|
19 | |
---|
20 | To compile the package in a different directory from the one |
---|
21 | containing the source code, you must use GNU make. `cd' to the |
---|
22 | directory where you want the object files and executables to go and |
---|
23 | run `configure' with the option `--srcdir=DIR', where DIR is the |
---|
24 | directory that contains the source code. Using this option is |
---|
25 | actually unnecessary if the source code is in the parent directory of |
---|
26 | the one in which you are compiling; `configure' automatically checks |
---|
27 | for the source code in `..' if it does not find it in the current |
---|
28 | directory. |
---|
29 | |
---|
30 | By default, `make install' will install the package's files in |
---|
31 | /usr/local/bin, /usr/local/lib, /usr/local/man, etc. You can specify |
---|
32 | an installation prefix other than /usr/local by giving `configure' the |
---|
33 | option `--prefix=PATH'. Alternately, you can do so by changing the |
---|
34 | `prefix' variable in the Makefile that `configure' creates (the |
---|
35 | Makefile in the top-level directory, if the package contains |
---|
36 | subdirectories). |
---|
37 | |
---|
38 | You can specify separate installation prefixes for machine-specific |
---|
39 | files and machine-independent files. If you give `configure' the |
---|
40 | option `--exec_prefix=PATH', the package will use PATH as the prefix |
---|
41 | for installing programs and libraries. Normally, all files are |
---|
42 | installed using the same prefix. |
---|
43 | |
---|
44 | `configure' ignores any other arguments that you give it. |
---|
45 | |
---|
46 | If your system requires unusual options for compilation or linking |
---|
47 | that `configure' doesn't know about, you can give `configure' initial |
---|
48 | values for some variables by setting them in the environment. In |
---|
49 | Bourne-compatible shells, you can do that on the command line like |
---|
50 | this: |
---|
51 | CC='gcc -traditional' DEFS=-D_POSIX_SOURCE ./configure |
---|
52 | |
---|
53 | The `make' variables that you might want to override with environment |
---|
54 | variables when running `configure' are: |
---|
55 | |
---|
56 | (For these variables, any value given in the environment overrides the |
---|
57 | value that `configure' would choose:) |
---|
58 | CC C compiler program. |
---|
59 | Default is `cc', or `gcc' if `gcc' is in your PATH. |
---|
60 | INSTALL Program to use to install files. |
---|
61 | Default is `install' if you have it, `cp' otherwise. |
---|
62 | INCLUDEDIR Directory for `configure' to search for include files. |
---|
63 | Default is /usr/include. |
---|
64 | |
---|
65 | (For these variables, any value given in the environment is added to |
---|
66 | the value that `configure' chooses:) |
---|
67 | DEFS Configuration options, in the form '-Dfoo -Dbar ...' |
---|
68 | LIBS Libraries to link with, in the form '-lfoo -lbar ...' |
---|
69 | |
---|
70 | If you need to do unusual things to compile the package, we encourage |
---|
71 | you to teach `configure' how to do them and mail the diffs to the |
---|
72 | address given in the README so we can include them in the next |
---|
73 | release. |
---|
74 | |
---|
75 | 2. Type `make' to compile the package. |
---|
76 | |
---|
77 | 3. Type `make install' to install programs, data files, and |
---|
78 | documentation. |
---|
79 | |
---|
80 | 4. You can remove the program binaries and object files from the |
---|
81 | source directory by typing `make clean'. To also remove the |
---|
82 | Makefile(s), the header file containing system-dependent definitions |
---|
83 | (if the package uses one), and `config.status' (all the files that |
---|
84 | `configure' created), type `make distclean'. |
---|
85 | |
---|
86 | The file `configure.in' is used as a template to create `configure' by |
---|
87 | a program called `autoconf'. You will only need it if you want to |
---|
88 | regenerate `configure' using a newer version of `autoconf'. |
---|