Mercurial > emacs
comparison INSTALL @ 7864:e520e9f9a8d9
Formerly INSTALL.~31~
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 13 Jun 1994 15:30:51 +0000 |
parents | 99cf43c08895 |
children | 0d3e8a3551b1 |
comparison
equal
deleted
inserted
replaced
7863:c4adb7401604 | 7864:e520e9f9a8d9 |
---|---|
68 libraries. | 68 libraries. |
69 | 69 |
70 The `--run-in-place' option sets up default values for the path | 70 The `--run-in-place' option sets up default values for the path |
71 variables in `./Makefile' so that Emacs will expect to find its data | 71 variables in `./Makefile' so that Emacs will expect to find its data |
72 files (lisp libraries, runnable programs, and the like) in the same | 72 files (lisp libraries, runnable programs, and the like) in the same |
73 locations they occupy while Emacs builds. This means that you don't | 73 locations they occupy while Emacs builds. If you use `--run-in-place' |
74 have to install Emacs in order to run it; it uses its data files as | 74 then you don't need to do `make install'. |
75 they were unpacked. | 75 |
76 `--run-in-place' is pretty much obsolete now. If you put the Emacs | |
77 executable in a subdirectory named src, which has siblings named lisp, | |
78 lib-src, etc, info and so on, Emacs automatically uses those sibling | |
79 directories if the standard installation directory names don't contain | |
80 what Emacs needs. | |
76 | 81 |
77 The `--with-gcc' option specifies that the build process should | 82 The `--with-gcc' option specifies that the build process should |
78 compile Emacs using GCC. If you don't want to use GCC, specify | 83 compile Emacs using GCC. If you don't want to use GCC, specify |
79 `--with-gcc=no'. If this option is omitted, `configure' will search | 84 `--with-gcc=no'. If this option is omitted, `configure' will search |
80 for GCC in your load path, and use it if present. | 85 for GCC in your load path, and use it if present. |
176 and data files installed as well, run `make install'. | 181 and data files installed as well, run `make install'. |
177 | 182 |
178 By default, Emacs installs its files in the following directories: | 183 By default, Emacs installs its files in the following directories: |
179 | 184 |
180 `/usr/local/bin' holds the executable programs users normally run - | 185 `/usr/local/bin' holds the executable programs users normally run - |
181 `emacs', `etags', `ctags', `b2m', and `emacsclient'. | 186 `emacs', `etags', `ctags', `b2m', `emacsclient', |
187 and `rcs-checkin'. | |
182 | 188 |
183 `/usr/local/lib/emacs/VERSION/lisp' holds the Emacs Lisp library; | 189 `/usr/local/lib/emacs/VERSION/lisp' holds the Emacs Lisp library; |
184 `VERSION' stands for the number of the Emacs version | 190 `VERSION' stands for the number of the Emacs version |
185 you are installing, like `18.59' or `19.0'. Since the | 191 you are installing, like `18.59' or `19.0'. Since the |
186 lisp library changes from one version of Emacs to | 192 lisp library changes from one version of Emacs to |
381 when running make in the subdirectories. | 387 when running make in the subdirectories. |
382 | 388 |
383 | 389 |
384 CONFIGURATION BY HAND | 390 CONFIGURATION BY HAND |
385 | 391 |
386 Running the `configure' program performs the following steps. | 392 Instead of running the `configure' program, you have to perform the |
393 following steps. | |
387 | 394 |
388 1) Copy `./src/config.h.in' to `./src/config.h'. | 395 1) Copy `./src/config.h.in' to `./src/config.h'. |
389 | 396 |
390 2) Consult `./etc/MACHINES' to see what configuration name you should | 397 2) Consult `./etc/MACHINES' to see what configuration name you should |
391 use for your system. Look at the code of the `configure' script to | 398 use for your system. Look at the code of the `configure' script to |
398 you need to override any of the definitions in the s/*.h and m/*.h | 405 you need to override any of the definitions in the s/*.h and m/*.h |
399 files for your system and machine, do so by editing config.h, not by | 406 files for your system and machine, do so by editing config.h, not by |
400 changing the s/*.h and m/*.h files. Occasionally you may need to | 407 changing the s/*.h and m/*.h files. Occasionally you may need to |
401 redefine parameters used in `./lib-src/movemail.c'. | 408 redefine parameters used in `./lib-src/movemail.c'. |
402 | 409 |
403 3) If you're going to use the make utility to build Emacs, you will | 410 3) Create src/Makefile and lib-src/Makefile from the corresponding |
404 still need to run `configure' first, giving theappropriate values for | 411 `Makefile.in.in' files. First copy `Makefile.in.in' to `Makefile.in', |
405 the variables in the sections entitled "Things `configure' Might Edit" | 412 then edit in appropriate substituions for the @...@ constructs, |
406 and "Where To Install Things." Note that you may only need to change | 413 and then copy the shell commands near the end of `configure' |
407 the variables `prefix' and `exec_prefix', since the rest of the | 414 that run cpp to construct `Makefile'. |
408 variables have reasonable defaults based on them. For each Makefile | 415 |
409 variable of this type, there is a corresponding configure option; for | 416 4) Create `Makefile' files in various other directories |
410 example, to change the location of the lock directory, you might use | 417 from the corresponding `Makefile.in' files. This isn't so hard, |
411 | 418 just a matter of substitution. |
412 ./configure --lockdir=/nfs/emacslock | 419 |
413 | 420 5) If you're going to use the build-install script to build Emacs, |
414 4) If you're going to use the build-install script to build Emacs, | |
415 copy `./build-ins.in' to `./build-install', and edit the | 421 copy `./build-ins.in' to `./build-install', and edit the |
416 definitions found at the top of the script. | 422 definitions found at the top of the script. |
417 | 423 |
418 The `configure' script is built from `configure.in' by the `autoconf' | 424 The `configure' script is built from `configure.in' by the `autoconf' |
419 program. However, since Emacs has configuration requirements that | 425 program. However, since Emacs has configuration requirements that |
430 | 436 |
431 1) Run `make src/paths.h' in the top directory. This produces | 437 1) Run `make src/paths.h' in the top directory. This produces |
432 `./src/paths.h' from the template file `./src/paths.h.in', changing | 438 `./src/paths.h' from the template file `./src/paths.h.in', changing |
433 the paths to the values specified in `./Makefile'. | 439 the paths to the values specified in `./Makefile'. |
434 | 440 |
435 2) Cd to `./lib-src' and run `make'. This creates executables named | 441 2) Go to directory `./lib-src' and run `make'. This creates |
436 `ctags' and `etags' and `wakeup' and `make-docfile' and `digest-doc' | 442 executables named `ctags' and `etags' and `wakeup' and `make-docfile' |
437 and `test-distrib'. And others. | 443 and `digest-doc' and `test-distrib'. And others. |
438 | 444 |
439 3) Cd to `./src' and Run `make'. This refers to files in the `./lisp' | 445 3) Go to directory `./src' and Run `make'. This refers to files in |
440 and `./lib-src' subdirectories using names `../lisp' and | 446 the `./lisp' and `./lib-src' subdirectories using names `../lisp' and |
441 `../lib-src'. | 447 `../lib-src'. |
442 | 448 |
443 This creates a file `./src/emacs' which is the runnable Emacs, | 449 This creates a file `./src/emacs' which is the runnable Emacs, |
444 assigning it a new build version number by incrementing the build | 450 which has another name that contains a version number. |
445 version stored in `./lisp/version.el'. | 451 Each time you do this, that version number increments in the last place. |
446 | 452 |
447 It also creates a file in `./etc' whose name is `DOC' followed by the | 453 It also creates a file in `./etc' whose name is `DOC' followed by the |
448 current Emacs version. This file contains documentation strings for | 454 current Emacs version. This file contains documentation strings for |
449 all the functions in Emacs. Each time you run make to make a new | 455 all the functions in Emacs. Each time you run make to make a new |
450 emacs, a new DOC file with a new name is made. You must keep the DOC | 456 emacs, a new DOC file with a new name is made. You must keep the DOC |
461 1) Copy `./lisp' and its subdirectories, `./etc', and the executables | 467 1) Copy `./lisp' and its subdirectories, `./etc', and the executables |
462 in `./lib-src' to their final destinations, as selected in `./src/paths.h'. | 468 in `./lib-src' to their final destinations, as selected in `./src/paths.h'. |
463 | 469 |
464 Strictly speaking, not all of the executables in `./lib-src' need be copied. | 470 Strictly speaking, not all of the executables in `./lib-src' need be copied. |
465 - The programs `cvtmail', `emacsserver', `fakemail', `hexl', | 471 - The programs `cvtmail', `emacsserver', `fakemail', `hexl', |
466 `movemail', `timer', `vcdiff', `wakeup', and `yow' are used by | 472 `movemail', `profile', `rcs2log', `timer', `vcdiff', `wakeup', |
467 Emacs; they do need to be copied. | 473 and `yow' are used by Emacs; they do need to be copied. |
468 - The programs `etags', `ctags', `emacsclient', `b2m', and `rcs2log' | 474 - The programs `etags', `ctags', `emacsclient', `b2m', and `rcs-checkin' |
469 are intended to be run by users; they are handled below. | 475 are intended to be run by users; they are handled below. |
470 - The programs `make-docfile', `make-path', and `test-distrib' were | 476 - The programs `make-docfile', `make-path', and `test-distrib' were |
471 used in building Emacs, and are not needed any more. | 477 used in building Emacs, and are not needed any more. |
472 - The programs `digest-doc' and `sorted-doc' convert a `DOC' file into | 478 - The programs `digest-doc' and `sorted-doc' convert a `DOC' file into |
473 a file for users to read. There is no important reason to move them. | 479 a file for users to read. There is no important reason to move them. |
489 of installing different versions. | 495 of installing different versions. |
490 | 496 |
491 You can delete `./src/temacs'. | 497 You can delete `./src/temacs'. |
492 | 498 |
493 5) Copy the programs `b2m', `emacsclient', `ctags', `etags', and | 499 5) Copy the programs `b2m', `emacsclient', `ctags', `etags', and |
494 `rcs2log' from `./lib-src' to `/usr/local/bin'. These programs are | 500 `rcs-checkin' from `./lib-src' to `/usr/local/bin'. These programs are |
495 intended for users to run. | 501 intended for users to run. |
496 | 502 |
497 6) Copy the man pages in `./etc' for emacs, ctags, and etags into the | 503 6) Copy the man pages in `./etc' for emacs, ctags, and etags into the |
498 appropriate man directories. | 504 appropriate man directories. |
499 | 505 |
500 7) The files in the `./src' subdirectory, except for `emacs', are not | 506 7) The files in the `./src' subdirectory, except for `emacs', are not |
501 used by Emacs once it is built. The source would be handy for | 507 used by Emacs once it is built. However, it is very desirable to keep |
502 debugging. | 508 the source on line for debugging. |
503 | 509 |
504 | 510 |
505 PROBLEMS | 511 PROBLEMS |
506 | 512 |
507 See the file PROBLEMS in this directory for a list of various | 513 See the file PROBLEMS in this directory for a list of various |