comparison mule-doc/INSTALL @ 70:131b0175ea99 r20-0b30

Import from CVS: tag r20-0b30
author cvs
date Mon, 13 Aug 2007 09:02:59 +0200
parents
children c7528f8e288d
comparison
equal deleted inserted replaced
69:804d1389bcd6 70:131b0175ea99
1 GNU Emacs Installation Guide
2 Copyright (c) 1992, 1994 Free software Foundation, Inc.
3
4 Permission is granted to anyone to make or distribute verbatim copies
5 of this document as received, in any medium, provided that the
6 copyright notice and permission notice are preserved,
7 and that the distributor grants the recipient permission
8 for further redistribution as permitted by this notice.
9
10 Permission is granted to distribute modified versions
11 of this document, or of portions of it,
12 under the above conditions, provided also that they
13 carry prominent notices stating who last changed them,
14 and that any new or changed statements about the activities
15 of the Free Software Foundation are approved by the Foundation.
16
17
18 BUILDING AND INSTALLATION:
19 (This is for a Unix or Unix-like system. For MSDOS, see below;
20 search for MSDOG.)
21
22 0) Mule specific notices are surrounded by lines <MULE> and </MULE>.
23
24 1) Make sure your system has enough swapping space allocated to handle
25 a program whose pure code is 900k bytes and whose data area is at
26 least 400k and can reach 8Mb or more. If the swapping space is
27 insufficient, you will get an error in the command `temacs -batch -l
28 loadup dump', found in `./src/Makefile.in.in', or possibly when
29 running the final dumped Emacs.
30
31 Building Emacs requires about 50 Mb of disk space (including the Emacs
32 sources). Once installed, Emacs occupies about 20 Mb in the file
33 system where it is installed; this includes the executable files, Lisp
34 libraries, miscellaneous data files, and on-line documentation. If
35 the building and installation take place in different directories,
36 then the installation procedure momentarily requires 50+20 Mb.
37
38 <MULE>
39 Mule requires 5 Mb more of disk space.
40 </MULE>
41
42 2) Consult `./etc/MACHINES' to see what configuration name you should
43 give to the `configure' program. That file sometimes offers hints for
44 getting around some possible installation problems.
45
46 3) In the top directory of the Emacs distribution, run the program
47 `configure' as follows:
48
49 ./configure CONFIGURATION-NAME [--OPTION[=VALUE]] ...
50
51 The CONFIGURATION-NAME argument should be a configuration name given
52 in `./etc/MACHINES'. If omitted, `configure' will try to guess your
53 system type by inspecting its environment; if it cannot, you must find
54 the appropriate configuration name in `./etc/MACHINES' and specify it
55 explicitly.
56
57 The `--with-x', `--with-x11', and `--with-x10' options specify which
58 window system Emacs should support. If you don't want X support,
59 specify `--with-x=no'. If all of these options are omitted,
60 `configure' will try to figure out for itself whether your system has
61 X11, and arrange to use it if present.
62
63 The `--x-includes=DIR' and `--x-libraries=DIR' options tell the build
64 process where the compiler should look for the include files and
65 object libraries used with the X Window System. Normally, your
66 compiler should be able to find these by default; these options should
67 only be necessary if you have your X Window System files installed in
68 unusual places.
69
70 You can specify toolkit operation when you configure Emacs; use the
71 option --with-x-toolkit.
72
73 Note: on some systems, it does not work to use the toolkit with shared
74 libraries.
75
76 The `--run-in-place' option sets up default values for the path
77 variables in `./Makefile' so that Emacs will expect to find its data
78 files (lisp libraries, runnable programs, and the like) in the same
79 locations they occupy while Emacs builds. If you use `--run-in-place'
80 then you don't need to do `make install'.
81
82 `--run-in-place' is pretty much obsolete now. If you put the Emacs
83 executable in a subdirectory named src, which has siblings named lisp,
84 lib-src, etc, info and so on, Emacs automatically uses those sibling
85 directories if the standard installation directory names don't contain
86 what Emacs needs.
87
88 The `--with-gcc' option specifies that the build process should
89 compile Emacs using GCC. If you don't want to use GCC, specify
90 `--with-gcc=no'. If this option is omitted, `configure' will search
91 for GCC in your load path, and use it if present.
92
93 The `--srcdir=DIR' option specifies that the configuration and build
94 processes should look for the Emacs source code in DIR, when DIR is
95 not the current directory.
96
97 You can use `--srcdir' to build Emacs for several different machine
98 types from a single source directory. Make separate build directories
99 for the different configuration types, and in each one, build Emacs
100 specifying the common source directory with `--srcdir'.
101
102 The `--prefix=PREFIXDIR' option specifies where the installation process
103 should put emacs and its data files. This defaults to `/usr/local'.
104 - Emacs (and the other utilities users run) go in PREFIXDIR/bin
105 (unless the `--exec-prefix' option says otherwise).
106 - The architecture-independent files go in PREFIXDIR/lib/emacs/VERSION
107 (where VERSION is the version number of Emacs, like `19.7').
108 - The architecture-dependent files go in
109 PREFIXDIR/lib/emacs/VERSION/CONFIGURATION
110 (where CONFIGURATION is the configuration name, like mips-dec-ultrix4.2),
111 unless the `--exec-prefix' option says otherwise.
112
113 The `--exec-prefix=EXECDIR' option allows you to specify a separate
114 portion of the directory tree for installing architecture-specific
115 files, like executables and utility programs. If specified,
116 - Emacs (and the other utilities users run) go in EXECDIR/bin, and
117 - The architecture-dependent files go in
118 EXECDIR/lib/emacs/VERSION/CONFIGURATION.
119 EXECDIR/bin should be a directory that is normally in users' PATHs.
120
121 <MULE>
122 Here's a list of Mule specific options.
123
124 The `--terminal-face' option allows you to use face even while running
125 Mule under terminals.
126
127 The `--mcpath' option allows you to handle multilingual file names.
128 You should set `pathname-coding-system' appropriately in
129 ./lisp/site-init.el.
130
131 The `--with-wnn4' option enables Japanese and Chinese inputting by Wnn4.
132
133 The `--wiht-wnn6' option enables Japanese and Chinese inputting by Wnn6.
134
135 The `--wnn-includes=DIR' option specifies where to search for WNN
136 header files.
137
138 The `--wnn-libraries=DIR' option specifies where to search for WNN
139 libraries (e.g. libwnn.a).
140
141 To use `--with-wnn4' or `--with-wnn6', you should have
142 created include files (e.g. wnn/commonhd.h) and a library
143 (libwnn.a). For `--with-wnn4', you must install Wnn4 to get
144 those files. For `--with-wnn6', you must buy Wnn6 from
145 Omron Software or get those files from the following ftp cite:
146 ftp-sp.omronsoft.co.jp:/pub/Wnn6/sdk
147 In addition, in both cases, you must run jserver (and/or
148 cserver, kserver) on some IP-reachable machine. In the case
149 of Wnn6, it is not a free software, and you must buy it from
150 Omron Software or get a trial program from the following ftp
151 cite:
152 ftp-sp.omronsoft.co.jp:/pub/Wnn6/trial
153 The trial program can be used until the end of September '95.
154 But, Wnn6 does not include cserver and kserver. If you want
155 to use them, you must also installl Wnn4. There's no
156 problem in using jserver of Wnn6 along with csercer/kserver
157 of Wnn4.
158
159 General information about Wnn6 is avairable at:
160 http://www-sp.omronsoft.co.jp/
161
162 The `--sj3' option enables Japanese inputting by SJ3.
163
164 The `--canna' option enables Japanese inputting by CANNA.
165
166 The `--canna-includes=DIR' and `--canna-libraries=DIR' options are
167 analogous to `--wnn-includes=DIR' and `--wnn-libraries=DIR'
168 respectively.
169
170 The `--bdf-path=DIRS' option specifies where to search for
171 BDF files. DIRS is a list of directories separated by
172 comma. This specification is concerned by `m2ps' program.
173
174 The `--valbits=NN' option specifies a value of VALBITS macro.
175 </MULE>
176
177 For example, the command
178
179 ./configure mips-dec-ultrix --with-x11
180
181 configures Emacs to build for a DECstation running Ultrix, with
182 support for the X11 window system.
183
184 The `configure' program does not accept abbreviations for its
185 options.
186
187 Note that `configure' doesn't do any compilation or installation
188 itself. It just creates the files that influence those things:
189 `./Makefile', `build-install', and `./src/config.h'. For details on
190 exactly what it does, see the section called `CONFIGURATION BY HAND',
191 below.
192
193 When it is done, `configure' prints a description of what it did and
194 leaves a copy in the file `config.status'. That file is also a shell
195 script which, when run, recreates the same configuration; it contains
196 the verbal description as a comment. If `configure' exits with an
197 error after disturbing the status quo, it removes `config.status'.
198
199 The work of `configure' can be done by editing various files in the
200 distribution, but using `configure' is supposed to be simpler. See
201 the section called "CONFIGURATION BY HAND" below if you want to do the
202 configuration yourself.
203
204 4) Look at `./lisp/paths.el'; if some of those values are not right
205 for your system, edit the file `./lisp/site-init.el' containing Emacs
206 Lisp code to override them; you probably don't want to edit paths.el
207 itself. YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES,
208 rather than `defvar', as used by `./lisp/paths.el'. For example,
209
210 (setq news-inews-program "/usr/bin/inews")
211
212 is how you would override the default value of the variable
213 news-inews-program (which is "/usr/local/inews").
214
215 Note that, on some systems, the code you place in site-init.el must
216 not use expand-file-name or any other function which may look
217 something up in the system's password and user information database.
218 See `./PROBLEMS' for more details on which systems this affects.
219
220 5) Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs
221 Lisp code you want Emacs to load before it is dumped out. Use
222 site-load.el for additional libraries if you arrange for their
223 documentation strings to be in the etc/DOC file (see
224 src/Makefile.in.in if you wish to figure out how to do that). For all
225 else, use site-init.el.
226
227 <MULE>
228 All language specific basic environments are defined `./lisp/mule-init.el'.
229 By default, Japanese is set as the primary environment.
230 You can change primary environment in `./lisp/site-init.el by
231 `set-primary-environment'. For instance,
232 (set-primary-environment 'chinese)
233 makes Chinese the primary environment.
234 If you are still not satisfied with the settings, you can
235 override them after the above line. For instance,
236 (set-default-file-coding-system '*big5*)
237 makes *big5* be used for file I/O by default.
238 If you are not satisfied with other default settings in `./lisp/mule-init.el',
239 override any of them also in `./lisp/site-init.el'. For instance,
240 (define-program-coding-system nil ".*mail.*" '*iso-8859-1*)
241 makes the coding-system '*iso-8859-1* be used in mail.
242 </MULE>
243
244 Note that, on some systems, the code you place in site-init.el must
245 not use expand-file-name or any other function which may look
246 something up in the system's password and user information database.
247 See `./PROBLEMS' for more details on which systems this affects.
248
249 The `site-*.el' files are nonexistent in the distribution. You do not
250 need to create them if you have nothing to put in them.
251
252 6) Refer to the file `./etc/TERMS' for information on fields you may
253 wish to add to various termcap entries. The files `./etc/termcap.ucb'
254 and `./etc/termcap.dat' may already contain appropriately-modified
255 entries.
256
257 7) Run `make' in the top directory of the Emacs distribution to finish
258 building Emacs in the standard way. The final executable file will be
259 named `src/emacs'. If you want to have Emacs's executable programs
260 and data files installed as well, run `make install'.
261
262 By default, Emacs installs its files in the following directories:
263
264 `/usr/local/bin' holds the executable programs users normally run -
265 `emacs', `etags', `ctags', `b2m', `emacsclient',
266 and `rcs-checkin'.
267
268 `/usr/local/lib/emacs/VERSION/lisp' holds the Emacs Lisp library;
269 `VERSION' stands for the number of the Emacs version
270 you are installing, like `18.59' or `19.0'. Since the
271 lisp library changes from one version of Emacs to
272 another, including the version number in the path
273 allows you to have several versions of Emacs installed
274 at the same time; this means that you don't have to
275 make Emacs unavailable while installing a new
276 version.
277
278 Emacs searches for its lisp files in
279 `/usr/local/lib/emacs/site-lisp', then in this
280 directory.
281
282 `/usr/local/lib/emacs/VERSION/etc' holds the Emacs tutorial, the DOC
283 file, the `yow' database, and other
284 architecture-independent files Emacs might need while
285 running. VERSION is as specified for `.../lisp'.
286
287 `/usr/local/lib/emacs/lock' contains files indicating who is editing
288 what, so Emacs can detect editing clashes between
289 users.
290
291 `/usr/local/lib/emacs/VERSION/CONFIGURATION-NAME' contains executable
292 programs used by Emacs that users are not expected to
293 run themselves.
294 `VERSION' is the number of the Emacs version you are
295 installing, and `CONFIGURATION-NAME' is the argument
296 you gave to the `configure' program to identify the
297 architecture and operating system of your machine,
298 like `mips-dec-ultrix' or `sparc-sun-sunos'. Since
299 these files are specific to the version of Emacs,
300 operating system, and architecture in use, including
301 the configuration name in the path allows you to have
302 several versions of Emacs for any mix of machines and
303 operating systems installed at the same time; this is
304 useful for sites at which different kinds of machines
305 share the file system Emacs is installed on.
306
307 `/usr/local/info' holds the on-line documentation for Emacs, known as
308 "info files". Many other GNU programs are documented
309 using info files as well, so this directory stands
310 apart from the other, Emacs-specific directories.
311
312 `/usr/local/man/man1' holds the man pages for the programs installed
313 in `/usr/local/bin'.
314
315 If these directories are not what you want, you can specify where to
316 install Emacs's libraries and data files or where Emacs should search
317 for its lisp files by giving values for `make' variables as part of
318 the command. See the section below called `MAKE VARIABLES' for more
319 information on this.
320
321 8) Check the file `dir' in your site's info directory (usually
322 /usr/local/info) to make sure that it has a menu entry for the Emacs
323 info files.
324
325 9) If your system uses lock files to interlock access to mailer inbox files,
326 then you might need to make the program arch-lib/movemail setuid or setgid
327 to enable it to write the lock files. We believe this is safe.
328
329 10) You are done!
330
331
332 MAKE VARIABLES
333
334 You can change where the build process installs Emacs and its data
335 files by specifying values for `make' variables as part of the `make'
336 command line. For example, if you type
337
338 make install bindir=/usr/local/gnubin
339
340 the `bindir=/usr/local/gnubin' argument indicates that the Emacs
341 executable files should go in `/usr/local/gnubin', not
342 `/usr/local/bin'.
343
344 Here is a complete list of the variables you may want to set.
345
346 `bindir' indicates where to put executable programs that users can
347 run. This defaults to /usr/local/bin.
348
349 `datadir' indicates where to put the architecture-independent
350 read-only data files that Emacs refers to while it runs; it
351 defaults to /usr/local/lib. We create the following
352 subdirectories under `datadir':
353 - `emacs/VERSION/lisp', containing the Emacs lisp library, and
354 - `emacs/VERSION/etc', containing the Emacs tutorial, the DOC
355 file, and the `yow' database.
356 `VERSION' is the number of the Emacs version you are installing,
357 like `18.59' or `19.0'. Since these files vary from one version
358 of Emacs to another, including the version number in the path
359 allows you to have several versions of Emacs installed at the
360 same time; this means that you don't have to make Emacs
361 unavailable while installing a new version.
362
363 `statedir' indicates where to put architecture-independent data files
364 that Emacs modifies while it runs; it defaults to
365 /usr/local/lib as well. We create the following
366 subdirectories under `statedir':
367 - `emacs/lock', containing files indicating who is editing
368 what, so Emacs can detect editing clashes between
369 users.
370
371 `libdir' indicates where to put architecture-specific data files that
372 Emacs refers to as it runs; it too defaults to `/usr/local/lib'.
373 We create the following subdirectories under `libdir':
374 - `emacs/VERSION/CONFIGURATION-NAME', containing executable
375 programs used by Emacs that users are not expected to run
376 themselves.
377 `VERSION' is the number of the Emacs version you are installing,
378 and `CONFIGURATION-NAME' is the argument you gave to the
379 `configure' program to identify the architecture and operating
380 system of your machine, like `mips-dec-ultrix' or
381 `sparc-sun-sunos'. Since these files are specific to the version
382 of Emacs, operating system, and architecture in use, including
383 the configuration name in the path allows you to have several
384 versions of Emacs for any mix of machines and operating systems
385 installed at the same time; this is useful for sites at which
386 different kinds of machines share the file system Emacs is
387 installed on.
388
389 `infodir' indicates where to put the info files distributed with
390 Emacs; it defaults to `/usr/local/info'.
391
392 `mandir' indicates where to put the man pages for Emacs and its
393 utilities (like `etags'); it defaults to
394 `/usr/local/man/man1'.
395
396 `manext' gives the extension the man pages should be installed with.
397 It should contain a period, followed by the appropriate
398 digit. It defaults to `.1'. For example given the default
399 values for `mandir' and `manext', the Emacs man page would be
400 installed as `/usr/local/man/man1/emacs.1'.
401
402 `prefix' doesn't give a path for any specific part of Emacs; instead,
403 its value is used to determine the defaults for all the
404 architecture-independent path variables - `datadir',
405 `statedir', `infodir', and `mandir'. Its default value is
406 `/usr/local'; the other variables add on `lib' or `man' to it
407 by default.
408
409 For example, suppose your site generally places GNU software
410 under `/usr/users/software/gnusoft' instead of `/usr/local'.
411 By including
412 `prefix=/usr/users/software/gnusoft'
413 in the arguments to `make', you can instruct the build process
414 to place all of the Emacs data files in the appropriate
415 directories under that path.
416
417 `exec_prefix' serves the same purpose as `prefix', but instead
418 determines the default values for the architecture-dependent
419 path variables - `bindir' and `libdir'.
420
421 The above variables serve analogous purposes in the makefiles for all
422 GNU software; here are some variables specific to Emacs.
423
424 `lispdir' indicates where Emacs installs and expects its lisp
425 library. Its default value, based on `datadir' (see above),
426 is `/usr/local/lib/emacs/VERSION/lisp' (where `VERSION' is as
427 described above).
428
429 `locallisppath' indicates where Emacs should search for lisp files
430 specific to your site. It should be a colon-separated list of
431 directories; Emacs checks them in order before checking
432 `lispdir'. Its default value, based on `datadir' (see above),
433 is `/usr/local/lib/emacs/site-lisp'.
434
435 `lisppath' is the complete list of directories Emacs should search for
436 its lisp files; its default value is the concatenation of
437 `lispdir' and `locallisppath'. It should be a colon-separated
438 list of directories; Emacs checks them in the order they
439 appear.
440
441 `etcdir' indicates where Emacs should install and expect the rest of
442 its architecture-independent data, like the tutorial, DOC
443 file, and yow database. Its default value, based on `datadir'
444 (which see), is `/usr/local/lib/emacs/VERSION/etc'.
445
446 `lockdir' indicates the directory where Emacs keeps track of its
447 locking information. Its default value, based on `statedir'
448 (which see), is `/usr/local/lib/emacs/lock'.
449
450 `archlibdir' indicates where Emacs installs and expects the
451 executable files and other architecture-dependent data it uses
452 while running. Its default value, based on `libdir' (which
453 see), is `/usr/local/lib/emacs/VERSION/CONFIGURATION-NAME'
454 (where VERSION and CONFIGURATION-NAME are as described above).
455
456 Remember that you must specify any variable values you need each time
457 you run `make' in the top directory. If you run `make' once to build
458 emacs, test it, and then run `make' again to install the files, you
459 must provide the same variable settings each time. To make the
460 settings persist, you can edit them into the `Makefile' in the top
461 directory, but be aware that running the `configure' program erases
462 `Makefile' and rebuilds it from `Makefile.in'.
463
464 The top-level Makefile stores the variable settings it used in the
465 Makefiles for the subdirectories, so you don't have to specify them
466 when running make in the subdirectories.
467
468
469 CONFIGURATION BY HAND
470
471 Instead of running the `configure' program, you have to perform the
472 following steps.
473
474 1) Copy `./src/config.h.in' to `./src/config.h'.
475
476 2) Consult `./etc/MACHINES' to see what configuration name you should
477 use for your system. Look at the code of the `configure' script to
478 see which operating system and architecture description files from
479 `src/s' and `src/m' should be used for that configuration name. Edit
480 `src/config.h', and change the two `#include' directives to include
481 the appropriate system and architecture description files.
482
483 2) Edit `./src/config.h' to set the right options for your system. If
484 you need to override any of the definitions in the s/*.h and m/*.h
485 files for your system and machine, do so by editing config.h, not by
486 changing the s/*.h and m/*.h files. Occasionally you may need to
487 redefine parameters used in `./lib-src/movemail.c'.
488
489 3) Create src/Makefile and lib-src/Makefile from the corresponding
490 `Makefile.in.in' files. First copy `Makefile.in.in' to `Makefile.in',
491 then edit in appropriate substituions for the @...@ constructs,
492 and then copy the shell commands near the end of `configure'
493 that run cpp to construct `Makefile'.
494
495 4) Create `Makefile' files in various other directories
496 from the corresponding `Makefile.in' files. This isn't so hard,
497 just a matter of substitution.
498
499 5) If you're going to use the build-install script to build Emacs,
500 copy `./build-ins.in' to `./build-install', and edit the
501 definitions found at the top of the script.
502
503 The `configure' script is built from `configure.in' by the `autoconf'
504 program. However, since Emacs has configuration requirements that
505 autoconf can't meet, `configure.in' uses an marriage of custom-baked
506 configuration code and autoconf macros. New versions of autoconf
507 could very well break this arrangement, so it may be wise to avoid
508 rebuilding `configure' from `configure.in' when possible.
509
510
511 BUILDING GNU EMACS BY HAND
512
513 Once Emacs is configured, running `make' or running the shell script
514 `build-install' in the top directory performs the following steps.
515
516 1) Run `make src/paths.h' in the top directory. This produces
517 `./src/paths.h' from the template file `./src/paths.h.in', changing
518 the paths to the values specified in `./Makefile'.
519
520 2) Go to directory `./lib-src' and run `make'. This creates
521 executables named `ctags' and `etags' and `wakeup' and `make-docfile'
522 and `digest-doc' and `test-distrib'. And others.
523
524 3) Go to directory `./src' and Run `make'. This refers to files in
525 the `./lisp' and `./lib-src' subdirectories using names `../lisp' and
526 `../lib-src'.
527
528 This creates a file `./src/emacs' which is the runnable Emacs,
529 which has another name that contains a version number.
530 Each time you do this, that version number increments in the last place.
531
532 It also creates a file in `./etc' whose name is `DOC' followed by the
533 current Emacs version. This file contains documentation strings for
534 all the functions in Emacs. Each time you run make to make a new
535 emacs, a new DOC file with a new name is made. You must keep the DOC
536 file for an Emacs version as long as you keep using that Emacs
537 version.
538
539
540 INSTALLATION BY HAND
541
542 The steps below are done by the shell script `build-install' or by
543 running `make install' in the main directory of the Emacs
544 distribution.
545
546 1) Copy `./lisp' and its subdirectories, `./etc', and the executables
547 in `./lib-src' to their final destinations, as selected in `./src/paths.h'.
548
549 Strictly speaking, not all of the executables in `./lib-src' need be copied.
550 - The programs `cvtmail', `emacsserver', `fakemail', `hexl',
551 `movemail', `profile', `rcs2log', `timer', `vcdiff', `wakeup',
552 and `yow' are used by Emacs; they do need to be copied.
553 - The programs `etags', `ctags', `emacsclient', `b2m', and `rcs-checkin'
554 are intended to be run by users; they are handled below.
555 - The programs `make-docfile', `make-path', and `test-distrib' were
556 used in building Emacs, and are not needed any more.
557 - The programs `digest-doc' and `sorted-doc' convert a `DOC' file into
558 a file for users to read. There is no important reason to move them.
559
560 2) Copy the files in `./info' to the place specified in
561 `./lisp/site-init.el' or `./lisp/paths.el'. Note that if the
562 destination directory already contains a file named `dir', you
563 probably don't want to replace it with the `dir' file in the Emacs
564 distribution. Instead, you should make sure that the existing `dir'
565 file contains an appropriate menu entry for the Emacs info.
566
567 3) Create a directory for Emacs to use for clash detection, named as
568 indicated by the PATH_LOCK macro in `./src/paths.h'.
569
570 4) Copy `./src/emacs' to `/usr/local/bin', or to some other directory
571 in users' search paths. `./src/emacs' has an alternate name
572 `./src/emacs-EMACSVERSION'; you may wish to make a symbolic link named
573 `/usr/local/bin/emacs' pointing to that alternate name, as an easy way
574 of installing different versions.
575
576 You can delete `./src/temacs'.
577
578 5) Copy the programs `b2m', `emacsclient', `ctags', `etags', and
579 `rcs-checkin' from `./lib-src' to `/usr/local/bin'. These programs are
580 intended for users to run.
581
582 <MULE>
583 You'd better also copy the program `m2ps'.
584 </MULE>
585
586 6) Copy the man pages in `./etc' for emacs, ctags, and etags into the
587 appropriate man directories.
588
589 7) The files in the `./src' subdirectory, except for `emacs', are not
590 used by Emacs once it is built. However, it is very desirable to keep
591 the source on line for debugging.
592
593
594 PROBLEMS
595
596 See the file PROBLEMS in this directory for a list of various
597 problems sometimes encountered, and what to do about them.
598
599
600 Installation on MSDOG (a.k.a. MSDOS)
601
602 To install on MSDOG, you need to have the GNU C compiler for MSDOG
603 (also known as djgpp), GNU Make, rm, mv, chmod, and sed. Type these
604 commands:
605
606 config msdos
607 make install
608
609 To save disk space, Emacs is built with the idea that you will execute
610 it from the same place in the file system where you built it. As the
611 /usr/local/ subtree does not exist on most MSDOG systems, the
612 executables are placed in /emacs/bin/.
613
614 MSDOG is a not a multitasking operating system, so Emacs features such
615 as asynchronous subprocesses that depend on multitasking will not
616 work. Synchronous subprocesses do work.
617
618 <MULE>
619 To run Mule for DOS, termcap must be setup.
620
621 For exapmle, type following commands:
622
623 mkdir c:\etc
624 copy msdos\termcap c:\etc
625 set TERMCAP=c:/etc/termcap
626 set TERM=ibmpc
627 </MULE>