diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | INSTALL | 117 | ||||
-rw-r--r-- | INSTALL.gen | 152 |
3 files changed, 157 insertions, 122 deletions
@@ -1,10 +1,18 @@ +2006-11-09 Werner LEMBERG <wl@gnu.org> + + * INSTALL: Move information about external installation from + INSTALL.gen into this file. + Updated. + + * INSTALL.gen: Update to new version (from texinfo CVS). + 2006-11-09 Bernd Warken * INSTALL.gen: Extent the file by information on `external installation'. Reorder the installation instruction as `normal installation'. -2006-11-08 Werner Lemberg <wl@gnu.org> +2006-11-08 Werner LEMBERG <wl@gnu.org> * doc/Makefile.sub (install_data): Take care of proper paths while installing info files. Bug reported by Bernd Warken. @@ -1,21 +1,86 @@ -To install groff, follow the instructions in the file INSTALL.gen. +This file contains information that supplements the generic +installation instructions in file `INSTALL.gen'. -This file contains information that supplements those instructions. -(For instructions how to build groff with DJGPP tools for MS-DOS and -MS-Windows, see the file arch/djgpp/README.) +Normal Installation +=================== -(For instructions how to build groff with the MinGW tools for -MS-Windows, see the file README.MinGW.) +The simplest way to compile groff is: -groff is written in C++, so you need a C++ compiler. The C++ -source files use a suffix of `.cpp', so your C++ compiler must be able -to handle this. If you don't already have a C++ compiler, I suggest -gcc 2.7.1 or later (gcc version 2 includes GNU C++ as well as GNU C). -From gcc 2.5, it is no longer necessary to install libg++: the C++ -header files needed by groff are created by the gcc installation -process. To override configure's choice of C++ compiler, you can set -the CXX environment variable. + 1. `cd' to the directory containing groff's source code and type + `./configure' to configure groff for your system. If you are + using `csh' on an old version of System V, you might need to type + `sh ./configure' instead to prevent `csh' from trying to execute + `configure' itself. + + Running `configure' takes awhile. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile groff. + + 3. Type `sudo make install' to install the groff programs and any + data files and documentation. `make install' is the only step for + which you need `root' access; this is done by `sudo'. + + 4. You can remove the groff binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile groff for + a different kind of computer), type `make distclean'. + + +External Installation +===================== + +It is also possible to perform the whole installation process outside +of the source code directory. In this case a whole external build +directory structure is created without changing any parts of the source +code tree. This is useful if the source code is read-only or if +several different installations, such as for multiple architectures, +should be constructed. + +As an example we assume that the source code of the `groff' code is in +`/usr/local/src/groff', and that the build process should be done +within the directory `/home/my/groff.compile'. + + 0. Create `/home/my/groff.compile' and change to that directory. + + 1. Call `/usr/local/src/groff/configure' in that directory to + configure groff for your system. If you are using `csh' on an old + version of System V, you might need to type `sh + /usr/local/src/groff/configure' instead. + + 2. Type `make' to compile groff in that directory. + + 3. Type `sudo make install' to install the groff programs and any + data files and documentation. + + 4. You can remove the groff binaries and object files from the + build directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. + + +Special Platforms +================= + +For instructions how to build groff with DJGPP tools for MS-DOS and +MS-Windows, see the file arch/djgpp/README. + +For instructions how to build groff with the MinGW tools for +MS-Windows, see the file README.MinGW. + + +Miscellaneous +============= + +groff is written in C++, so you need a C++ compiler. The C++ source +files use a suffix of `.cpp', so your C++ compiler must be able to +handle this. If you don't already have a C++ compiler, we suggest gcc +2.7.1 or later (gcc version 2 includes GNU C++ as well as GNU C). From +gcc 2.5, it is no longer necessary to install libg++: the C++ header +files needed by groff are created by the gcc installation process. To +override configure's choice of C++ compiler, you can set the CXX +environment variable. If you have a library that provides a faster malloc than your system's usual malloc, it is good idea to include it in LIBS. For example, @@ -28,23 +93,25 @@ an incorrect guess, say PAGE=xxx ./configure where `xxx' should be either `A4' or `letter'. Note that this only -affects the paper selection of some device drivers like grops (which can -be still overridden on the command line). For compatibility with +affects the paper selection of some device drivers like grops (which +can be still overridden on the command line). For compatibility with ditroff, the default page length in gtroff is always 11 inches. The page length can be changed with the `pl' request. -When you have built groff, you can use the test-groff script to try -groff out on one of the man pages. (Use the .n files not the .man -files.) The test-groff script sets up environment variables to allow -groff to run without being installed. For example, you could do +When you have built groff but not installed yet, you can use the +test-groff script to try groff out on one of the man pages. (Use the +.n files not the .man files.) The test-groff script sets up environment +variables to allow groff to run without being installed. For example, +you could do ./test-groff -man -Tascii src/roff/groff/groff.n | less -To get a DVI, PDF, or HTML version of the groff texinfo manual, say `make -groff.dvi', `make groff.pdf', or `make groff.html', respectively, in the -`doc' subdirectory (after configuring the groff package). Note that you -need texinfo version 4.6 as a prerequisite. Neither older versions nor -texinfo 4.7 (due to a bug) work. +to display the groff(1) man page with the `less' pager. + +To get a DVI, PDF, or HTML version of the groff texinfo manual, say +`make groff.dvi', `make groff.pdf', or `make groff.html', respectively, +in the `doc' subdirectory (after configuring the groff package). Note +that you need texinfo version 4.8 as a prerequisite. If you have problems, read the PROBLEMS file. If this doesn't help send a bug report using the form in the file BUG-REPORT. diff --git a/INSTALL.gen b/INSTALL.gen index 8acefaab..5458714e 100644 --- a/INSTALL.gen +++ b/INSTALL.gen @@ -1,82 +1,19 @@ Installation Instructions ************************* -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2006 -Free Software Foundation, Inc. +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, +2006 Free Software Foundation, Inc. This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. -Normal Installation -=================== - -The simplest way to compile this package is: - - 1. `cd' to the directory containing the package's source code and type - `./configure' to configure the package for your system. If you're - using `csh' on an old version of System V, you might need to type - `sh ./configure' instead to prevent `csh' from trying to execute - `configure' itself. - - Running `configure' takes awhile. While running, it prints some - messages telling which features it is checking for. - - 2. Type `make' to compile the package. - - 3. Optionally, type `make check' to run any self-tests that come with - the package. - - 4. Type `sudo make install' to install the programs and any data - files and documentation. `make install' is the only step for - which you need `root' access; this is done by `sudo'. - - 5. You can remove the program binaries and object files from the - source code directory by typing `make clean'. To also remove the - files that `configure' created (so you can compile the package for - a different kind of computer), type `make distclean'. There is - also a `make maintainer-clean' target, but that is intended mainly - for the package's developers. If you use it, you may have to get - all sorts of other programs in order to regenerate files that came - with the distribution. - -External Installation -===================== - -It is also possible to perform the whole installation process outside -of the source code. In this case a whole external build directory -structure is created without changing any parts of the source code. -This is usefule when the source code is read-only or when several -different installations, such as for multiple architectures should be -constructed. - -As an example, let's assume that the source code of the `groff' code -is in `/usr/local/src/groff' and that the installation should be done -with the directory `/home/my/groff.compile'. - - 0. Run `cd /home/my/groff.compile'. - - 1. Call `/usr/local/src/groff/configure' in that directory to - configure the package for your system. If you're using `csh' on an - old version of System V, you might need to type - `sh /usr/local/src/groff/configure' instead. - - 2. Type `make' to compile the package in that directory. - - 3. Optionally, type `make check' to run any self-tests that come with - the package. - - 4. Type `sudo make install' to install the programs and any data - files and documentation. - - 5. You can remove the program binaries and object files from the - source code directory by typing `make clean'. To also remove the - files that `configure' created (so you can compile the package for - a different kind of computer), type `make distclean'. - Basic Installation ================== -These are generic installation instructions. +Briefly, the shell commands `./configure; make; make install' should +configure, build, and install this package. The following +more-detailed instructions are generic; see the `README' file for +instructions specific to this package. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses @@ -89,9 +26,9 @@ debugging `configure'). It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves -the results of its tests to speed up reconfiguring. (Caching is +the results of its tests to speed up reconfiguring. Caching is disabled by default to prevent problems with accidental use of stale -cache files.) +cache files. If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail @@ -101,9 +38,34 @@ some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.ac' (or `configure.in') is used to create -`configure' by a program called `autoconf'. You only need -`configure.ac' if you want to change it or regenerate `configure' using -a newer version of `autoconf'. +`configure' by a program called `autoconf'. You need `configure.ac' if +you want to change it or regenerate `configure' using a newer version +of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. + + Running `configure' might take a while. While running, it prints + some messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. Compilers and Options ===================== @@ -116,7 +78,7 @@ details on some of the pertinent environment variables. by setting variables in the command line or in the environment. Here is an example: - ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix + ./configure CC=c99 CFLAGS=-g LIBS=-lposix *Note Defining Variables::, for more details. @@ -125,31 +87,29 @@ Compiling For Multiple Architectures You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their -own directory. To do this, you must use a version of `make' that -supports the `VPATH' variable, such as GNU `make'. `cd' to the +own directory. To do this, you can use GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. - If you have to use a `make' that does not support the `VPATH' -variable, you have to compile the package for one architecture at a -time in the source code directory. After you have installed the -package for one architecture, use `make distclean' before reconfiguring -for another architecture. + With a non-GNU `make', it is safer to compile the package for one +architecture at a time in the source code directory. After you have +installed the package for one architecture, use `make distclean' before +reconfiguring for another architecture. Installation Names ================== -By default, `make install' will install the package's files in -`/usr/local/bin', `/usr/local/man', etc. You can specify an -installation prefix other than `/usr/local' by giving `configure' the -option `--prefix=PREFIX'. +By default, `make install' installs the package's commands under +`/usr/local/bin', include files under `/usr/local/include', etc. You +can specify an installation prefix other than `/usr/local' by giving +`configure' the option `--prefix=PREFIX'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you -give `configure' the option `--exec-prefix=PREFIX', the package will -use PREFIX as the prefix for installing programs and libraries. -Documentation and other data files will still use the regular prefix. +pass the option `--exec-prefix=PREFIX' to `configure', the package uses +PREFIX as the prefix for installing programs and libraries. +Documentation and other data files still use the regular prefix. In addition, if you use an unusual directory layout you can give options like `--bindir=DIR' to specify different values for particular @@ -197,7 +157,7 @@ where SYSTEM can have one of these forms: need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should -use the `--target=TYPE' option to select the type of system they will +use the option `--target=TYPE' to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a @@ -227,9 +187,14 @@ them in the `configure' command line, using `VAR=value'. For example: ./configure CC=/usr/local2/bin/gcc -will cause the specified gcc to be used as the C compiler (unless it is +causes the specified `gcc' to be used as the C compiler (unless it is overridden in the site shell script). +Unfortunately, this technique does not work for `CONFIG_SHELL' due to +an Autoconf bug. Until the bug is fixed you can use this workaround: + + CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash + `configure' Invocation ====================== @@ -267,8 +232,3 @@ overridden in the site shell script). `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. -Emacs settings -============== -Local Variables: -mode: text -End: |