aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1994-02-24 19:15:08 +0000
committerRichard M. Stallman1994-02-24 19:15:08 +0000
commit42db5687794d86add3a4b5966fa2d0157b5db060 (patch)
treeaa5e451366218662028cf9b46ff21caf10682996
parent0fa767e7a9d4562fa6541af7b7f2f17a2b38d419 (diff)
downloademacs-42db5687794d86add3a4b5966fa2d0157b5db060.tar.gz
emacs-42db5687794d86add3a4b5966fa2d0157b5db060.zip
Formerly INSTALL.~20~
-rw-r--r--INSTALL94
1 files changed, 64 insertions, 30 deletions
diff --git a/INSTALL b/INSTALL
index 05e7a5d74e9..45dd0dc6f6a 100644
--- a/INSTALL
+++ b/INSTALL
@@ -16,17 +16,22 @@ Copyright (c) 1992 Free software Foundation, Inc.
16 16
17 17
18BUILDING AND INSTALLATION: 18BUILDING AND INSTALLATION:
19(This is for a Unix or Unix-like system. For MSDOS, see below;
20search for MSDOG.)
19 21
201) Make sure your system has enough swapping space allocated to handle 221) Make sure your system has enough swapping space allocated to handle
21a program whose pure code is 900k bytes and whose data area is at 23a program whose pure code is 900k bytes and whose data area is at
22least 400k and can reach 8Mb or more. If the swapping space is 24least 400k and can reach 8Mb or more. If the swapping space is
23insufficient, you will get an error in the command `temacs -batch -l 25insufficient, you will get an error in the command `temacs -batch -l
24loadup dump', found in `./src/ymakefile', or possibly when running the 26loadup dump', found in `./src/Makefile.in.in', or possibly when
25final dumped Emacs. 27running the final dumped Emacs.
26 28
27Building Emacs requires about 30 Mb of disk space. Installed, Emacs 29Building Emacs requires about 30 Mb of disk space (including the Emacs
28occupies about 20 Mb; this includes the executable files, lisp 30sources). Once installed, Emacs occupies about 20 Mb in the file
29libraries, miscellaneous data files, and on-line documentation. 31system where it is installed; this includes the executable files, Lisp
32libraries, miscellaneous data files, and on-line documentation. If
33the building and installation take place in different directories,
34then the installation procedure momentarily requires 30+20 Mb.
30 35
312) Consult `./etc/MACHINES' to see what configuration name you should 362) Consult `./etc/MACHINES' to see what configuration name you should
32give to the `configure' program. That file sometimes offers hints for 37give to the `configure' program. That file sometimes offers hints for
@@ -56,6 +61,10 @@ compiler should be able to find these by default; these options should
56only be necessary if you have your X Window System files installed in 61only be necessary if you have your X Window System files installed in
57unusual places. 62unusual places.
58 63
64You can specify toolkit operation when you configure Emacs; use the
65option --with-x-toolkit=athena, --with-x-toolkit=motif, or
66--with-x-toolkit=open-look.
67
59The `--run-in-place' option sets up default values for the path 68The `--run-in-place' option sets up default values for the path
60variables in `./Makefile' so that Emacs will expect to find its data 69variables in `./Makefile' so that Emacs will expect to find its data
61files (lisp libraries, runnable programs, and the like) in the same 70files (lisp libraries, runnable programs, and the like) in the same
@@ -72,6 +81,11 @@ The `--srcdir=DIR' option specifies that the configuration and build
72processes should look for the Emacs source code in DIR, when DIR is 81processes should look for the Emacs source code in DIR, when DIR is
73not the current directory. 82not the current directory.
74 83
84You can use `--srcdir' to build Emacs for several different machine
85types from a single source directory. Make separate build directories
86for the different configuration types, and in each one, build Emacs
87specifying the common source directory with `--srcdir'.
88
75The `--prefix=PREFIXDIR' option specifies where the installation process 89The `--prefix=PREFIXDIR' option specifies where the installation process
76should put emacs and its data files. This defaults to `/usr/local'. 90should put emacs and its data files. This defaults to `/usr/local'.
77- Emacs (and the other utilities users run) go in PREFIXDIR/bin 91- Emacs (and the other utilities users run) go in PREFIXDIR/bin
@@ -134,8 +148,12 @@ not use expand-file-name or any other function which may look
134something up in the system's password and user information database. 148something up in the system's password and user information database.
135See `./PROBLEMS' for more details on which systems this affects. 149See `./PROBLEMS' for more details on which systems this affects.
136 150
1375) Put into `./lisp/site-init.el' any Emacs Lisp code you want Emacs 1515) Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs
138to load before it is dumped out. 152Lisp code you want Emacs to load before it is dumped out. Use
153site-load.el for additional libraries if you arrange for their
154documentation strings to be in the etc/DOC file (see
155src/Makefile.in.in if you wish to figure out how to do that). For all
156else, use site-load.el.
139 157
140Note that, on some systems, the code you place in site-init.el must 158Note that, on some systems, the code you place in site-init.el must
141not use expand-file-name or any other function which may look 159not use expand-file-name or any other function which may look
@@ -217,7 +235,11 @@ information on this.
217/usr/local/info) to make sure that it has a menu entry for the Emacs 235/usr/local/info) to make sure that it has a menu entry for the Emacs
218info files. 236info files.
219 237
2209) You are done! 2389) If your system uses lock files to interlock access to mailer inbox files,
239then you might need to make the program arch-lib/movemail setuid or setgid
240to enable it to write the lock files. We believe this is safe.
241
24210) You are done!
221 243
222 244
223MAKE VARIABLES 245MAKE VARIABLES
@@ -313,14 +335,15 @@ The above variables serve analogous purposes in the makefiles for all
313GNU software; here are some variables specific to Emacs. 335GNU software; here are some variables specific to Emacs.
314 336
315`lispdir' indicates where Emacs installs and expects its lisp 337`lispdir' indicates where Emacs installs and expects its lisp
316 library. Its default value, based on `datadir' (which see), 338 library. Its default value, based on `datadir' (see above),
317 is `/usr/local/lib/emacs/VERSION/lisp' (where `VERSION' is as 339 is `/usr/local/lib/emacs/VERSION/lisp' (where `VERSION' is as
318 described above). 340 described above).
319 341
320`locallisppath' indicates where Emacs should search for lisp files 342`locallisppath' indicates where Emacs should search for lisp files
321 specific to your site. It should be a colon-separated list of 343 specific to your site. It should be a colon-separated list of
322 directories; Emacs checks them in order before checking 344 directories; Emacs checks them in order before checking
323 `lispdir'. 345 `lispdir'. Its default value, based on `datadir' (see above),
346 is `/usr/local/lib/emacs/site-lisp'.
324 347
325`lisppath' is the complete list of directories Emacs should search for 348`lisppath' is the complete list of directories Emacs should search for
326 its lisp files; its default value is the concatenation of 349 its lisp files; its default value is the concatenation of
@@ -375,31 +398,27 @@ files for your system and machine, do so by editing config.h, not by
375changing the s/*.h and m/*.h files. Occasionally you may need to 398changing the s/*.h and m/*.h files. Occasionally you may need to
376redefine parameters used in `./lib-src/movemail.c'. 399redefine parameters used in `./lib-src/movemail.c'.
377 400
3783) If you're going to use the make utility to build Emacs, copy 4013) If you're going to use the make utility to build Emacs, you will
379`./Makefile.in' to `./Makefile', and then edit that to specify the 402still need to run `configure' first, giving theappropriate values for
380appropriate values for the variables in the sections entitled "Things 403the variables in the sections entitled "Things `configure' Might Edit"
381`configure' Might Edit" and "Where To Install Things." Note that you 404and "Where To Install Things." Note that you may only need to change
382may only need to change the variables `prefix' and `exec_prefix', 405the variables `prefix' and `exec_prefix', since the rest of the
383since the rest of the variables have reasonable defaults based on 406variables have reasonable defaults based on them. For each Makefile
384them. 407variable of this type, there is a corresponding configure option; for
408example, to change the location of the lock directory, you might use
385 409
3864) Typing `make src/Makefile lib-src/Makefile' builds the 410 ./configure --lockdir=/nfs/emacslock
387makefiles for the subdirectories, editing in the values for the path
388variables you establed in step 3.
389
390-- or --
391 411
3924) If you're going to use the build-install script to build Emacs, 4124) If you're going to use the build-install script to build Emacs,
393copy `./build-install.in' to `./build-install', and edit the similar 413copy `./build-ins.in' to `./build-install', and edit the
394definitions found at the top of the script. 414definitions found at the top of the script.
395 415
396
397The `configure' script is built from `configure.in' by the `autoconf' 416The `configure' script is built from `configure.in' by the `autoconf'
398program. However, since Emacs has configuration requirements that 417program. However, since Emacs has configuration requirements that
399autoconf can't meet, `configure.in' uses an unholy marriage of 418autoconf can't meet, `configure.in' uses an marriage of custom-baked
400custom-baked configuration code and autoconf macros. New versions of 419configuration code and autoconf macros. New versions of autoconf
401autoconf could very well break this arrangement, so it may be wise to 420could very well break this arrangement, so it may be wise to avoid
402avoid rebuilding `configure' from `configure.in' when possible. 421rebuilding `configure' from `configure.in' when possible.
403 422
404 423
405BUILDING GNU EMACS BY HAND 424BUILDING GNU EMACS BY HAND
@@ -420,8 +439,8 @@ and `./lib-src' subdirectories using names `../lisp' and
420`../lib-src'. 439`../lib-src'.
421 440
422This creates a file `./src/emacs' which is the runnable Emacs, 441This creates a file `./src/emacs' which is the runnable Emacs,
423assigning it a new version number by incrementing the version stored 442assigning it a new build version number by incrementing the build
424in `./lisp/version.el'. 443version stored in `./lisp/version.el'.
425 444
426It also creates a file in `./etc' whose name is `DOC' followed by the 445It also creates a file in `./etc' whose name is `DOC' followed by the
427current Emacs version. This file contains documentation strings for 446current Emacs version. This file contains documentation strings for
@@ -487,3 +506,18 @@ See the file PROBLEMS in this directory for a list of various
487problems sometimes encountered, and what to do about them. 506problems sometimes encountered, and what to do about them.
488 507
489 508
509Installation on MSDOG (a.k.a. MSDOS)
510
511To install on MSDOG, you need to have the GNU C compiler (also known
512as djgpp), GNU Make, rm, mv, chmod, and sed. Type these commands:
513
514config msdos
515make install
516
517To save disk space, Emacs is built in-place. As the /usr/local/
518subtree does not exist on most MSDOG systems, the executables are
519placed in /emacs/bin/.
520
521MSDOG is a not a multi-tasking operating system, so Emacs features
522that depend on multitasking will not work. Synchronous subprocesses
523do work.