character appear as a hollow box, that means you don't have a font for
it. You might find a font in the intlfonts distribution. If some
characters don't look right, or appear improperly aligned, a font
-fron the intlfonts distribution might look better.
+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.
3a) To build in the top-level Emacs source directory, go to that
directory and run the program `configure' as follows:
- ./configure CONFIGURATION-NAME [--OPTION[=VALUE]] ...
+ ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ...
The CONFIGURATION-NAME argument should be a configuration name given
-in `./etc/MACHINES'. If omitted, `configure' will try to guess your
-system type; if it cannot, you must find the appropriate configuration
-name in `./etc/MACHINES' and specify it explicitly.
+in `./etc/MACHINES', with the system version number added at the end.
+
+You should try first omitting CONFIGURATION-NAME. This way,
+`configure' will try to guess your system type. If it cannot guess,
+or if something goes wrong in building or installing Emacs this way,
+try again specifying the proper CONFIGURATION-NAME explicitly.
If you don't want X support, specify `--with-x=no'. If you omit this
option, `configure' will try to figure out for itself whether your
To build in a separate directory, you must use a version of `make'
that supports the `VPATH' variable, such as GNU `make'.
+3c) Some people try to build in a separate directory by filling
+it full of symlinks to the files in the real source directory.
+If you do that, `make all' does work, but `make install' fails:
+it copies the symbolic links rather than the actual files.
+
+As far as is known, there is no particular reason to use
+a directory full of links rather than use the standard GNU
+facilities to build in a separate directory (see 3b above).
+
4) Look at `./lisp/paths.el'; if some of those values are not right
for your system, set up the file `./lisp/site-init.el' with Emacs
Lisp code to override them; it is not a good idea to edit paths.el
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
Note that, on some systems, the code you place in site-init.el must
not use expand-file-name or any other function which may look
something up in the system's password and user information database.
-See `./PROBLEMS' for more details on which systems this affects.
+See `./etc/PROBLEMS' for more details on which systems this affects.
The `site-*.el' files are nonexistent in the distribution. You do not
need to create them if you have nothing to put in them.
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.
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':
path variables - `bindir' and `libexecdir'.
The above variables serve analogous purposes in the makefiles for all
-GNU software; here are some variables specific to Emacs.
-
-`lispdir' indicates where Emacs installs and expects its Lisp library.
- Its default value, based on `datadir' (see above), is
- `/usr/local/share/emacs/VERSION/lisp' (where `VERSION' is as
- described above).
-
-`locallisppath' indicates where Emacs should search for Lisp files
- specific to your site. It should be a colon-separated list of
- directories; Emacs checks them in order before checking
- `lispdir'. Its default value, based on `datadir' (see above), is
- `/usr/local/share/emacs/VERSION/site-lisp:/usr/local/share/emacs/site-lisp'.
-
-`lisppath' is the complete list of directories Emacs should search for
- its Lisp files; its default value is the concatenation of
- `locallisppath' and `lispdir'. It should be a colon-separated
- list of directories; Emacs checks them in the order they
- appear.
-
-`etcdir' indicates where Emacs should install and expect the rest of
- its architecture-independent data, like the tutorial, DOC
- file, and yow database. Its default value, based on `datadir'
- (which see), is `/usr/local/share/emacs/VERSION/etc'.
-
-`lockdir' indicates the directory where Emacs keeps track of its
- locking information. Its default value, based on
- `sharedstatedir' (which see), is `/usr/local/com/emacs/lock'.
+GNU software; this variable is specific to Emacs.
`archlibdir' indicates where Emacs installs and expects the executable
files and other architecture-dependent data it uses while
directory, but be aware that running the `configure' program erases
`Makefile' and rebuilds it from `Makefile.in'.
+The path for finding Lisp files is specified in src/paths.h,
+a file which is generated by running configure. To change the path,
+you can edit the definition of PATH_LOADSEARCH in that file
+before you run `make'.
+
The top-level Makefile stores the variable settings it used in the
Makefiles for the subdirectories, so you don't have to specify them
when running make in the subdirectories.
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
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.
PROBLEMS
-See the file PROBLEMS in this directory for a list of various
+See the file PROBLEMS in etc subdirectory for a list of various
problems sometimes encountered, and what to do about them.
(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:
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