comparison INSTALL @ 398:74fd4e045ea6 r21-2-29

Import from CVS: tag r21-2-29
author cvs
date Mon, 13 Aug 2007 11:13:30 +0200
parents 1f50e6fe4f3f
children a86b2b5e0111
comparison
equal deleted inserted replaced
397:f4aeb21a5bad 398:74fd4e045ea6
1 XEmacs Installation Guide 1 XEmacs Installation Guide
2 Copyright (c) 1994, 1995, 1996 Board of Trustees, University of Illinois 2 Copyright (c) 1994, 1995, 1996 Board of Trustees, University of Illinois
3 Copyright (c) 1994 Free Software Foundation, Inc. 3 Copyright (c) 1994-1999 Free Software Foundation, Inc.
4 4
5 Synched up with: FSF 19.30. 5 Synched up with: FSF 19.30.
6 6
7 Permission is granted to anyone to make or distribute verbatim copies 7 Permission is granted to anyone to make or distribute verbatim copies
8 of this document as received, in any medium, provided that the 8 of this document as received, in any medium, provided that the
21 BUILDING AND INSTALLATION (Unix and Cygwin, see the file nt/README 21 BUILDING AND INSTALLATION (Unix and Cygwin, see the file nt/README
22 for instructions on building under Microsoft Windows): 22 for instructions on building under Microsoft Windows):
23 23
24 1) Make sure your system has enough swapping space allocated to handle 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 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 26 least 400k and can reach 8Mb or more. Note that a typical XEmacs
27 build is much bigger. If the swapping space is
27 insufficient, you will get an error in the command `temacs -batch 28 insufficient, you will get an error in the command `temacs -batch
28 -l loadup dump', found in `./src/Makefile.in.in', or possibly when 29 -l loadup dump', found in `./src/Makefile.in.in', or possibly when
29 running the final dumped XEmacs. 30 running the final dumped XEmacs.
30 31
31 Building XEmacs requires about 41 Mb of disk space (including the 32 Verify that your users have a high enough stack limit. On some
32 XEmacs sources). Once installed, XEmacs occupies about 16 Mb in the 33 systems such as OpenBSD and OSF/Tru64 the default is 2MB which is
33 file system where it is installed; this includes the executable files, 34 too low. See 'PROBLEMS' for details.
34 Lisp libraries, miscellaneous data files, and on-line documentation. 35
35 The amount of storage of the Lisp directories may be reduced by 36 Building XEmacs requires about 100 Mb of disk space (including the
36 compressing the .el files. If the building and installation take place 37 XEmacs sources). Once installed, XEmacs occupies between 20 and 100 Mb
37 in different directories, then the installation procedure temporarily 38 in the file system where it is installed; this includes the executable files,
38 requires 41+16 Mb. Adjust this value upwards depending upon what 39 Lisp libraries, miscellaneous data files, and on-line documentation. The
39 additional Lisp support is installed. 40 exact amount depends greatly on the number of extra lisp packages that are
41 installed
40 42
41 XEmacs requires an ANSI C compiler, such as GCC. If you wish to build 43 XEmacs requires an ANSI C compiler, such as GCC. If you wish to build
42 the documentation yourself, you will need at least version 1.68 of 44 the documentation yourself, you will need at least version 1.68 of
43 makeinfo (GNU texinfo-3.11). 45 makeinfo (GNU texinfo-3.11).
44 46
63 65
64 Use the --site-includes and --site-libraries options when building 66 Use the --site-includes and --site-libraries options when building
65 XEmacs to allow configure to find the external software packages. 67 XEmacs to allow configure to find the external software packages.
66 If you link with dynamic (``.so'') external package libraries, which 68 If you link with dynamic (``.so'') external package libraries, which
67 is not recommended, you will also need to add the library directories 69 is not recommended, you will also need to add the library directories
68 to the --site-runtime-libraries option. 70 to the --site-runtime-libraries option. For your convenience these can
69 71 be set together by using the --with-site-prefix command. This will set
70 72 these variables as needed assuming your libraries are organised as a
71 3) Decide what Initial Lisp you need with XEmacs. XEmacs is 73 typical /usr tree.
72 distributed separately from most of its runtime environment. This is 74
75 3) [N.B. Most of this section can be done during or after the
76 compilation of the core source code, but is present early to catch
77 your attention.]
78
79 Decide what Initial Lisp you need with XEmacs. XEmacs is
80 distributed separately from most of its runtime environment. This is
73 done to make it easier for administrators to tune an installation for 81 done to make it easier for administrators to tune an installation for
74 what the local users need. See the file etc/PACKAGES for an overview 82 what the local users need. Note that while XEmacs will compile and
75 of what is available and which packages need to be installed prior to 83 install without any packages present at least some additional lisp
76 building XEmacs. At this point you only need a minimum to get started 84 packages are needed to bring XEmacs up to "normal" editor
77 at which point you may install what you wish without further changes 85 functionality. Installation and upgrading of the packages can be done
78 to the XEmacs binary. A sample minimum configuration for a Linux 86 almost automatically when from inside XEmacs when it has been compiled
79 system using Mule and Wnn6 from OMRON corporation would be the 87 and installed.
80 packages `mule-base' and `egg-its'. By default, packages will be 88
81 searched for in the path 89 More information and suggestions for which packages to install see the
90 file README.packages.
91
92 IMPORTANT! The file README.packages contain information vital to have
93 a fully working XEmacs. This information was not included in this file
94 only because it is too large for this terse INSTALL. Please read
95 README.packages now!
96
97 By default, packages will be searched for in the path
82 98
83 ~/.xemacs::$prefix/lib/xemacs-${version}/mule-packages:$prefix/lib/xemacs/mule-packages:$prefix/lib/xemacs-${version}/xemacs-packages:$prefix/lib/xemacs/xemacs-packages 99 ~/.xemacs::$prefix/lib/xemacs-${version}/mule-packages:$prefix/lib/xemacs/mule-packages:$prefix/lib/xemacs-${version}/xemacs-packages:$prefix/lib/xemacs/xemacs-packages
84 100
85 This may be changed by specifying a different value with the 101 This may be changed by specifying a different value with the
86 --package-path configuration option. 102 --package-path configuration option.
292 especially if your system's `mmap' implemntation is missing or 308 especially if your system's `mmap' implemntation is missing or
293 inefficient. Generally, it's best to go with the default 309 inefficient. Generally, it's best to go with the default
294 configuration for your system. You can tweak this based on how you 310 configuration for your system. You can tweak this based on how you
295 use XEmacs, and the memory and cpu resources available on your system. 311 use XEmacs, and the memory and cpu resources available on your system.
296 312
297 The `--use-system-malloc' option can be use to either enable or 313 The `--with-system-malloc' option can be use to either enable or
298 disable use of the system malloc. Generally, it's best to go with the 314 disable use of the system malloc. Generally, it's best to go with the
299 default configuration for your system. Note that on many systems 315 default configuration for your system. Note that on many systems
300 using the system malloc disables the use of the relocating allocator. 316 using the system malloc disables the use of the relocating allocator.
301 317
302 The `--use-debug-malloc' option can be used to link a special debugging 318 The `--with-debug-malloc' option can be used to link a special debugging
303 version of malloc. Debug Malloc is not included with XEmacs, is 319 version of malloc. Debug Malloc is not included with XEmacs, is
304 intended for use only by the developers and may be obtained from 320 intended for use only by the developers and may be obtained from
305 <URL:http://www.letters.com/dmalloc/>. 321 <URL:http://www.letters.com/dmalloc/>.
306 322
307 The `--debug' and `--error-checking' options are intended for use only 323 The `--debug' and `--error-checking' options are intended for use only
378 When it is done, `configure' prints a description of what it did and 394 When it is done, `configure' prints a description of what it did and
379 creates a shell script `config.status' which, when run, recreates the 395 creates a shell script `config.status' which, when run, recreates the
380 same configuration. If `configure' exits with an error after 396 same configuration. If `configure' exits with an error after
381 disturbing the status quo, it removes `config.status'. 397 disturbing the status quo, it removes `config.status'.
382 398
383 4) Look at `./lisp/paths.el'; if some of those values are not right 399 5) Look at `./lisp/paths.el'; if some of those values are not right
384 for your system, set up the file `./lisp/site-init.el' with XEmacs 400 for your system, set up the file `./lisp/site-init.el' with XEmacs
385 Lisp code to override them; it is not a good idea to edit paths.el 401 Lisp code to override them; it is not a good idea to edit paths.el
386 itself. YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES, 402 itself. YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES,
387 rather than `defvar', as used by `./lisp/paths.el'. For example, 403 rather than `defvar', as used by `./lisp/paths.el'. For example,
388 404
401 canonical form. XEmacs tries to detect how your automounter is 417 canonical form. XEmacs tries to detect how your automounter is
402 configured. If you have an unusual automounter configuration that 418 configured. If you have an unusual automounter configuration that
403 XEmacs cannot detect, you may need to change the value of 419 XEmacs cannot detect, you may need to change the value of
404 `directory-abbrev-alist'. 420 `directory-abbrev-alist'.
405 421
406 5) Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs 422 6) Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs
407 Lisp code you want XEmacs to load before it is dumped out. Use 423 Lisp code you want XEmacs to load before it is dumped out. Use
408 site-load.el for additional libraries if you arrange for their 424 site-load.el for additional libraries if you arrange for their
409 documentation strings to be in the lib-src/DOC file (see 425 documentation strings to be in the lib-src/DOC file (see
410 src/Makefile.in.in if you wish to figure out how to do that). For all 426 src/Makefile.in.in if you wish to figure out how to do that). For all
411 else, use site-init.el. 427 else, use site-init.el.
420 See `./PROBLEMS' for more details on which systems this affects. 436 See `./PROBLEMS' for more details on which systems this affects.
421 437
422 The `site-*.el' files are nonexistent in the distribution. You do not 438 The `site-*.el' files are nonexistent in the distribution. You do not
423 need to create them if you have nothing to put in them. 439 need to create them if you have nothing to put in them.
424 440
425 6) Refer to the file `./etc/TERMS' for information on fields you may 441 7) Refer to the file `./etc/TERMS' for information on fields you may
426 wish to add to various termcap entries. The files `./etc/termcap.ucb' 442 wish to add to various termcap entries. The files `./etc/termcap.ucb'
427 and `./etc/termcap.dat' may already contain appropriately-modified 443 and `./etc/termcap.dat' may already contain appropriately-modified
428 entries. 444 entries.
429 445
430 7) Run `make' in the top directory of the XEmacs distribution to finish 446 8) Run `make' in the top directory of the XEmacs distribution to finish
431 building XEmacs in the standard way. The final executable file is 447 building XEmacs in the standard way. The final executable file is
432 named `src/emacs'. You can execute this file "in place" without 448 named `src/emacs'. You can execute this file "in place" without
433 copying it, if you wish; then it automatically uses the sibling 449 copying it, if you wish; then it automatically uses the sibling
434 directories ../lisp, ../lib-src, ../info. 450 directories ../lisp, ../lib-src, ../info.
435 451
503 information on this. 519 information on this.
504 520
505 Using GNU Make allows for simultaneous builds with and without the 521 Using GNU Make allows for simultaneous builds with and without the
506 --srcdir option. 522 --srcdir option.
507 523
508 8) If your system uses lock files to interlock access to mailer inbox files, 524 9) If your system uses lock files to interlock access to mailer inbox
509 then you might need to make the movemail program setuid or setgid 525 files, then you might need to make the movemail program setuid or
510 to enable it to write the lock files. We believe this is safe. 526 setgid to enable it to write the lock files. We believe this is safe.
511 The setuid/setgid bits need not be set on any other XEmacs-related 527 The setuid/setgid bits need not be set on any other XEmacs-related
512 executables. 528 executables.
513 529
514 9) You are done with the hard part! You can remove executables and 530 10) You are done with the hard part! You can remove executables and
515 object files from the build directory by typing `make clean'. To also 531 object files from the build directory by typing `make clean'. To also
516 remove the files that `configure' created (so you can compile XEmacs 532 remove the files that `configure' created (so you can compile XEmacs
517 for a different configuration), type `make distclean'. 533 for a different configuration), type `make distclean'.
518 534
519 10) You should now go to the XEmacs web page at http://www.xemacs.org/ 535 11) You should now go to the XEmacs web page at http://www.xemacs.org/
520 and decide what additional Lisp support you wish to have. 536 and decide what additional Lisp support you wish to have.
521 537
522 MAKE VARIABLES 538 MAKE VARIABLES
523 539
524 You can change where the build process installs XEmacs and its data 540 You can change where the build process installs XEmacs and its data
628 executable files and other architecture-dependent data it uses 644 executable files and other architecture-dependent data it uses
629 while running. Its default value, based on `libdir' (see 645 while running. Its default value, based on `libdir' (see
630 above), is `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME' 646 above), is `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME'
631 (where VERSION and CONFIGURATION-NAME are as described above). 647 (where VERSION and CONFIGURATION-NAME are as described above).
632 648
649 `docdir' indicates where to put Lisp documentation strings that XEmacs
650 refers to as it runs. It defaults the value of `archlibdir'
651 (see above).
652
633 `moduledir' indicates where XEmacs installs and expects to find 653 `moduledir' indicates where XEmacs installs and expects to find
634 any dynamic modules. Its default value, based on 654 any dynamic modules. Its default value, based on
635 `archlibdir' (see above) is 655 `archlibdir' (see above) is
636 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME/modules' 656 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME/modules'
637 (where VERSION and CONFIGURATION-NAME are as described above). 657 (where VERSION and CONFIGURATION-NAME are as described above).
664 see which operating system and architecture description files from 684 see which operating system and architecture description files from
665 `src/s' and `src/m' should be used for that configuration name. Edit 685 `src/s' and `src/m' should be used for that configuration name. Edit
666 `src/config.h', and change the two `#include' directives to include 686 `src/config.h', and change the two `#include' directives to include
667 the appropriate system and architecture description files. 687 the appropriate system and architecture description files.
668 688
669 2) Edit `./src/config.h' to set the right options for your system. If 689 3) Edit `./src/config.h' to set the right options for your system. If
670 you need to override any of the definitions in the s/*.h and m/*.h 690 you need to override any of the definitions in the s/*.h and m/*.h
671 files for your system and machine, do so by editing config.h, not by 691 files for your system and machine, do so by editing config.h, not by
672 changing the s/*.h and m/*.h files. Occasionally you may need to 692 changing the s/*.h and m/*.h files. Occasionally you may need to
673 redefine parameters used in `./lib-src/movemail.c'. 693 redefine parameters used in `./lib-src/movemail.c'.
674 694
675 3) If you're going to use the make utility to build XEmacs, you will 695 4) If you're going to use the make utility to build XEmacs, you will
676 still need to run `configure' first, giving the appropriate values for 696 still need to run `configure' first, giving the appropriate values for
677 the variables in the sections entitled "Things `configure' Might Edit" 697 the variables in the sections entitled "Things `configure' Might Edit"
678 and "Where To Install Things." Note that you may only need to change 698 and "Where To Install Things." Note that you may only need to change
679 the variables `prefix' and `exec_prefix', since the rest of the 699 the variables `prefix' and `exec_prefix', since the rest of the
680 variables have reasonable defaults based on them. For each Makefile 700 variables have reasonable defaults based on them. For each Makefile
770 debugging. 790 debugging.
771 791
772 792
773 PROBLEMS 793 PROBLEMS
774 794
795 The most likely problem is that you forgot to read and follow the
796 directions in README.packages. You can not have a working XEmacs
797 without downloading some additional packages.
798
775 See the file PROBLEMS in this directory for a list of various 799 See the file PROBLEMS in this directory for a list of various
776 problems sometimes encountered, and what to do about them. 800 problems sometimes encountered, and what to do about them.
777 801
778 802
779 If all else fails, please see etc/InstallGuide courtesy 803 If all else fails, please see etc/InstallGuide courtesy