(ada-mode): `set '' -> `setq'.
[bpt/emacs.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index 6e5697a..e537a41 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -20,18 +20,20 @@ ADDITIONAL DISTRIBUTION FILES
 * leim-M.N.tar.gz
 
 The Emacs Lisp code for input methods for various international
-character scripts is distributed in a separate tar file because of its
-large size.  This file is called leim-M.N.tar.gz, with the same
-version number as Emacs, and it unpacks into the directory
-emacs-M.N/leim.  Thus, if you unpack it in the same directory where
-you unpacked the Emacs distribution, it fills in a subdirectory
-of the Emacs distribution.
-
-If you have already unpacked the Leim tar file into a subdirectory of
-the Emacs sources, building and installing Emacs automatically
-installs the input method support as well.  If you unpack the Leim tar
-file into the Emacs sources after building and installing Emacs, just
-build Emacs again and install it again.
+character scripts is distributed in a separate tar file because it
+amounts to a significant fraction of the size of the distribution.
+This tar file is called leim-M.N.tar.gz, with the same version number
+as Emacs, and it unpacks into the directory emacs-M.N/leim.
+
+You should unpack leim-M.N.tar.gz into the same directory where you
+have previously unpacked the main Emacs distribution.  It fills in the
+contents of one subdirectory, which is present in the main Emacs
+distribution only in dummy form.
+
+Once you have unpacked the Leim tar file into the Emacs source tree,
+building and installing Emacs automatically installs the input method
+support as well.  If you have built Emacs without unpacking Leim
+first, just unpack Leim, build Emacs again, and install it again.
 
 * intlfonts-VERSION.tar.gz
 
@@ -42,28 +44,81 @@ it.  You might find a font in the intlfonts distribution.  If some
 characters don't look right, or appear improperly aligned, a font
 from the intlfonts distribution might look better.
 
+The fonts in the intlfonts distribution are also used by the ps-print
+package for printing international characters.  The file
+lisp/ps-mule.el defines the .bdf font files required for printing
+each character set.
+
 The intlfonts distribution contains its own installation instructions,
 in the intlfonts/README file.
 
+* elisp-manual-M.N.tar.gz
+
+This distribution contains the Emacs Lisp Reference Manual which
+complements the Emacs Lisp Manual.  It is a good idea to install the
+Emacs Lisp Reference Manual after installing Emacs, to complete the
+on-line documentation of Emacs in Info.
+
+If you have installed Texinfo, you can install the Emacs Lisp
+Reference Manual this way:
+
+     cd elisp-manual-M.N
+     ./configure --prefix=PREFIXDIR
+     make install
+
+Otherwise, you can install it manually.  Just copy the files elisp and
+elisp-* from the elisp-manual-M.N directory to your site's info
+directory (see the description of `infodir', below), and make sure
+that file `dir' in this directory contains an entry like this:
+
+    * Elisp: (elisp).  The Emacs Lisp Reference Manual.
+
+* Image support libraries
+
+Emacs needs optional libraries to be able to display images (with the
+exception of PBM and XBM images whose support is built-in).  On some
+systems these may already be present or available as additional
+packages, particularly on GNU/Linux.  (In some cases older versions
+won't work because some routines are missing, and configure should
+avoid such old versions.)
+
+If necessary, you can build them from source.  None are vital for
+running Emacs.  Here's the list of these optional libraries, and the
+URLs where they can be found:
+
+  . libxpm for XPM:   ftp://ftp.x.org/contrib/libraries/
+  . libpng for PNG:   ftp://www.libpng.org/pub/png/
+  . libz (for PNG):   http://www.info-zip.org/pub/infozip/zlib/
+  . libjpeg for JPEG: ftp://ftp.uu.net/graphics/jpeg/
+  . libtiff for TIFF: http://www.libtiff.org/
+  . libungif for GIF: 
+      http://prtr-13.ucsc.edu/~badger/software/libungif/index.shtml
+
+Emacs will configure itself to build with these libraries if configure
+finds them on your system unless you supply the appropriate
+--without-LIB option.  See below for more details.
+
 
 BUILDING AND INSTALLATION:
 
 (This is for a Unix or Unix-like system.  For MSDOS, see below; search
-for MSDOG.  For Windows NT or Windows 95, see the file nt/INSTALL.)
+for MSDOG.  For Windows NT or Windows 95, see the file nt/INSTALL.
+For the Mac, see the file mac/INSTALL.)
 
 1) Make sure your system has enough swapping space allocated to handle
-a program whose pure code is 900k bytes and whose data area is at
-least 400k and can reach 8Mb or more.  If the swapping space is
+a program whose pure code is 1.5 MB and whose data area is at
+least 2.5 MB and can reach 80 MB or more.  If the swapping space is
 insufficient, you will get an error in the command `temacs -batch -l
 loadup dump', found in `./src/Makefile.in', or possibly when
 running the final dumped Emacs.
  
-Building Emacs requires about 70 Mb of disk space (including the Emacs
-sources).  Once installed, Emacs occupies about 35 Mb in the file
-system where it is installed; this includes the executable files, Lisp
-libraries, miscellaneous data files, and on-line documentation.  If
-the building and installation take place in different directories,
-then the installation procedure momentarily requires 70+35 Mb.
+Building Emacs requires about 95 MB of disk space (including the Emacs
+sources), or 130 MB if Leim is used.  Once installed, Emacs occupies
+about 60 MB (70 MB with Leim) in the file system where it is
+installed; this includes the executable files, Lisp libraries,
+miscellaneous data files, and on-line documentation.  If the building
+and installation take place in different directories, then the
+installation procedure momentarily requires 95+60 MB (130+170 MB).
 
 2) Consult `./etc/MACHINES' to see what configuration name you should
 give to the `configure' program.  That file offers hints for
@@ -100,7 +155,8 @@ To get more attractive menus, you can specify an X toolkit when you
 configure Emacs; use the option `--with-x-toolkit=TOOLKIT', where
 TOOLKIT is `athena' or `motif' (`yes' and `lucid' are synonyms for
 `athena').  On some systems, it does not work to use a toolkit with
-shared libraries.
+shared libraries.  A free implementation of Motif, called LessTif, is
+available ftom <http://www.lesstif.org>.
 
 The `--with-gcc' option specifies that the build process should
 compile Emacs using GCC.  If you don't want to use GCC, specify
@@ -115,6 +171,21 @@ add `--with-hesiod'.  These options enable Emacs to use POP; whether
 Emacs uses POP is controlled by individual users--see the Rmail
 chapter of the Emacs manual.
 
+For image support you may have to download, build, and install the
+appropriate image support libraries for image types other than XBM and
+PBM, see the list of URLs in "ADDITIONAL DISTRIBUTION FILES" above.
+(Note that PNG support requires libz in addition to libpng.)
+
+To disable individual types of image support in Emacs for some reason,
+even though configure finds the libraries, you can configure with one
+or more of these options:
+
+  --without-xpm        for XPM image support
+  --without-jpeg       for JPEG image support
+  --without-tiff       for TIFF image support
+  --without-gif        for GIF image support
+  --without-png        for PNG image support
+
 The `--prefix=PREFIXDIR' option specifies where the installation process
 should put emacs and its data files.  This defaults to `/usr/local'.
 - Emacs (and the other utilities users run) go in PREFIXDIR/bin
@@ -206,7 +277,8 @@ Lisp code you want Emacs to load before it is dumped out.  Use
 site-load.el for additional libraries if you arrange for their
 documentation strings to be in the etc/DOC file (see
 src/Makefile.in if you wish to figure out how to do that).  For all
-else, use site-init.el.
+else, use site-init.el.  Do not load byte-compiled code which
+was build with a non-nil value of `byte-compile-dynamic'.
 
 If you set load-path to a different value in site-init.el or
 site-load.el, Emacs will use *precisely* that value when it starts up
@@ -264,10 +336,6 @@ are installed in the following directories:
                architecture-independent files Emacs might need while
                running.  VERSION is as specified for `.../lisp'.
 
-`/usr/local/com/emacs/lock' contains files indicating who is editing
-               what, so Emacs can detect editing clashes between
-               users.
-
 `/usr/local/libexec/emacs/VERSION/CONFIGURATION-NAME' contains executable
                programs used by Emacs that users are not expected to
                run themselves.
@@ -309,7 +377,11 @@ to enable it to write the lock files.  We believe this is safe.
 10) You are done!  You can remove executables and object files from
 the build directory by typing `make clean'.  To also remove the files
 that `configure' created (so you can compile Emacs for a different
-configuration), type `make distclean'.
+configuration), type `make distclean'.  If you don't need some, or all
+of the input methods from the Leim package, you can remove the
+unneeded files in the leim/quail, leim/skk, and leim/skk-dic
+subdirectories of your site's lisp directory (usually
+/usr/local/share/emacs/VERSION/).
 
 
 
@@ -344,14 +416,6 @@ Here is a complete list of the variables you may want to set.
        same time; this means that you don't have to make Emacs
        unavailable while installing a new version.
 
-`sharedstatedir' indicates where to put architecture-independent data files
-       that Emacs modifies while it runs; it defaults to
-       /usr/local/com.  We create the following
-       subdirectories under `sharedstatedir':
-       - `emacs/lock', containing files indicating who is editing
-               what, so Emacs can detect editing clashes between
-               users.
-
 `libexecdir' indicates where to put architecture-specific data files that
        Emacs refers to as it runs; it defaults to `/usr/local/libexec'.
        We create the following subdirectories under `libexecdir':
@@ -517,10 +581,7 @@ probably don't want to replace it with the `dir' file in the Emacs
 distribution.  Instead, you should make sure that the existing `dir'
 file contains an appropriate menu entry for the Emacs info.
 
-3) Create a directory for Emacs to use for clash detection, named as
-indicated by the PATH_LOCK macro in `./src/paths.h'.
-
-4) Copy `./src/emacs' to `/usr/local/bin', or to some other directory
+3) Copy `./src/emacs' to `/usr/local/bin', or to some other directory
 in users' search paths.  `./src/emacs' has an alternate name
 `./src/emacs-EMACSVERSION'; you may wish to make a symbolic link named
 `/usr/local/bin/emacs' pointing to that alternate name, as an easy way
@@ -528,14 +589,14 @@ of installing different versions.
 
 You can delete `./src/temacs'.
 
-5) Copy the programs `b2m', `emacsclient', `ctags', `etags', and
+4) Copy the programs `b2m', `emacsclient', `ctags', `etags', and
 `rcs-checkin' from `./lib-src' to `/usr/local/bin'.  These programs are
 intended for users to run.
 
-6) Copy the man pages in `./etc' for emacs, ctags, and etags into the
+5) Copy the man pages in `./etc' for emacs, ctags, and etags into the
 appropriate man directories.
 
-7) The files in the `./src' subdirectory, except for `emacs', are not
+6) The files in the `./src' subdirectory, except for `emacs', are not
 used by Emacs once it is built.  However, it is very desirable to keep
 the source on line for debugging.
 
@@ -581,7 +642,7 @@ into problems during the build process.)
 It is important to understand that the runtime support of long file
 names by the Emacs binary is NOT affected by the LFN setting during
 compilation; Emacs compiled with DJGPP v2.0 or later will always
-support long file names on Windows 95 no matter what was the setting
+support long file names on Windows 9X no matter what was the setting
 of LFN at compile time.  However, if you compiled with LFN disabled
 and want to enable LFN support after Emacs was already built, you need
 to make sure that the support files in the lisp, etc and info
@@ -597,6 +658,22 @@ To unpack Emacs with djtar, type this command:
 (This assumes that the Emacs distribution is called `emacs.tgz' on
 your system.)
 
+If you need to type international characters, you will need to unpack
+the Leim distribution (see the description near the beginning of this
+file).  You unpack it from the same directory where you unpacked
+Emacs.  To unpack Leim with djtar, assuming the Leim distribution is
+called `leim.tgz', type this command:
+
+    djtar -x leim.tgz
+
+If you want to print international characters, install the intlfonts
+distribution.  For this, create a directory called `fonts' under the
+Emacs top-level directory (usually called `emacs-XX.YY') created by
+unpacking emacs.tgz, chdir into the directory emacs-XX.YY/fonts, and
+type this:
+
+    djtar -x intlfonts.tgz
+
 When unpacking is done, a directory called `emacs-XX.YY' will be
 created, where XX.YY is the Emacs version.  To build and install
 Emacs, chdir to that directory and type these commands:
@@ -604,16 +681,30 @@ Emacs, chdir to that directory and type these commands:
     config msdos
     make install
 
+To install the international fonts, chdir to the intlfonts-X.Y
+directory created when you unpacked the intlfonts distribution (X.Y is
+the version number of the fonts' distribution), and type the following
+command:
+
+    make bdf INSTALLDIR=..
+
+After Make finishes, you may remove the directory intlfonts-X.Y; the
+fonts are installed into the fonts/bdf subdirectory of the top-level
+Emacs directory, and that is where Emacs will look for them by
+default.
+
 Building Emacs creates executable files in the src and lib-src
 directories.  Installing Emacs on MSDOS moves these executables to a
 sibling directory called bin.  For example, if you build in directory
 /emacs, installing moves the executables from /emacs/src and
 /emacs/lib-src to the directory /emacs/bin, so you can then delete the
 subdirectories /emacs/src and /emacs/lib-src if you wish.  The only
-subdirectories you need to keep are bin, lisp, etc and info.  The bin
-subdirectory should be added to your PATH.  The msdos subdirectory
-includes a PIF and an icon file for Emacs which you might find useful
-if you run Emacs under MS Windows.
+subdirectories you need to keep are bin, lisp, etc and info.  (If you
+installed Leim, keep the leim subdirectory, and if you installed
+intlfonts, keep the fonts directory and all its sibdirectories as well.)
+The bin subdirectory should be added to your PATH.  The msdos
+subdirectory includes a PIF and an icon file for Emacs which you might
+find useful if you run Emacs under MS Windows.
 
 Emacs on MSDOS finds the lisp, etc and info directories by looking in
 ../lisp, ../etc and ../info, starting from the directory where the
@@ -629,5 +720,5 @@ work.  Synchronous subprocesses do work.
 Version 2.0 of djgpp has two bugs that affect Emacs.  We've included
 corrected versions of two files from djgpp in the msdos subdirectory:
 is_exec.c and sigaction.c.  To work around the bugs, compile these
-files and link them into temacs.  Djgpp version 2.01 have these bugs
-fixed, so upgrade if you can before building Emacs.
+files and link them into temacs.  Djgpp versions 2.01 and later have
+these bugs fixed, so upgrade if you can before building Emacs.