comparison INSTALL @ 371:cc15677e0335 r21-2b1

Import from CVS: tag r21-2b1
author cvs
date Mon, 13 Aug 2007 11:03:08 +0200
parents a4f53d9b3154
children 6240c7796c7a
comparison
equal deleted inserted replaced
370:bd866891f083 371:cc15677e0335
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-1999 Free Software Foundation, Inc. 3 Copyright (c) 1994 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. Note that a typical XEmacs 26 least 400k and can reach 8Mb or more. If the swapping space is
27 build is much bigger. If the swapping space is
28 insufficient, you will get an error in the command `temacs -batch 27 insufficient, you will get an error in the command `temacs -batch
29 -l loadup dump', found in `./src/Makefile.in.in', or possibly when 28 -l loadup dump', found in `./src/Makefile.in.in', or possibly when
30 running the final dumped XEmacs. 29 running the final dumped XEmacs.
31 30
32 Verify that your users have a high enough stack limit. On some 31 Building XEmacs requires about 41 Mb of disk space (including the
33 systems such as OpenBSD and OSF/Tru64 the default is 2MB which is 32 XEmacs sources). Once installed, XEmacs occupies about 16 Mb in the
34 too low. See 'PROBLEMS' for details. 33 file system where it is installed; this includes the executable files,
35 34 Lisp libraries, miscellaneous data files, and on-line documentation.
36 Building XEmacs requires about 100 Mb of disk space (including the 35 The amount of storage of the Lisp directories may be reduced by
37 XEmacs sources). Once installed, XEmacs occupies between 20 and 100 Mb 36 compressing the .el files. If the building and installation take place
38 in the file system where it is installed; this includes the executable files, 37 in different directories, then the installation procedure temporarily
39 Lisp libraries, miscellaneous data files, and on-line documentation. The 38 requires 41+16 Mb. Adjust this value upwards depending upon what
40 exact amount depends greatly on the number of extra lisp packages that are 39 additional Lisp support is installed.
41 installed
42 40
43 XEmacs requires an ANSI C compiler, such as GCC. If you wish to build 41 XEmacs requires an ANSI C compiler, such as GCC. If you wish to build
44 the documentation yourself, you will need at least version 1.68 of 42 the documentation yourself, you will need at least version 1.68 of
45 makeinfo (GNU texinfo-3.11). 43 makeinfo (GNU texinfo-3.11).
46 44
65 63
66 Use the --site-includes and --site-libraries options when building 64 Use the --site-includes and --site-libraries options when building
67 XEmacs to allow configure to find the external software packages. 65 XEmacs to allow configure to find the external software packages.
68 If you link with dynamic (``.so'') external package libraries, which 66 If you link with dynamic (``.so'') external package libraries, which
69 is not recommended, you will also need to add the library directories 67 is not recommended, you will also need to add the library directories
70 to the --site-runtime-libraries option. For your convenience these can 68 to the --site-runtime-libraries option.
71 be set together by using the --with-site-prefix command. This will set 69
72 these variables as needed assuming your libraries are organised as a 70
73 typical /usr tree. 71 3) Decide what Initial Lisp you need with XEmacs. XEmacs is
74 72 distributed separately from most of its runtime environment. This is
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
81 done to make it easier for administrators to tune an installation for 73 done to make it easier for administrators to tune an installation for
82 what the local users need. Note that while XEmacs will compile and 74 what the local users need. See the file etc/PACKAGES for an overview
83 install without any packages present at least some additional lisp 75 of what is available and which packages need to be installed prior to
84 packages are needed to bring XEmacs up to "normal" editor 76 building XEmacs. At this point you only need a minimum to get started
85 functionality. Installation and upgrading of the packages can be done 77 at which point you may install what you wish without further changes
86 almost automatically from inside XEmacs when it has been compiled 78 to the XEmacs binary. A sample minimum configuration for a Linux
87 and installed. 79 system using Mule and Wnn6 from OMRON corporation would be the
88 80 packages `mule-base' and `egg-its'. By default, packages will be
89 For more information and suggestions regarding packages to install see 81 searched for in the path
90 the file README.packages. 82
91 83 ~/.xemacs::$prefix/lib/xemacs-${version}/mule-packages:$prefix/lib/xemacs/mule-packages:$prefix/lib/xemacs-${version}/packages:$prefix/lib/xemacs/packages
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
98
99 ~/.xemacs::$prefix/lib/xemacs-${version}/mule-packages:$prefix/lib/xemacs/mule-packages:$prefix/lib/xemacs-${version}/xemacs-packages:$prefix/lib/xemacs/xemacs-packages
100 84
101 This may be changed by specifying a different value with the 85 This may be changed by specifying a different value with the
102 --package-path configuration option. 86 --package-path configuration option.
103
104 IMPORTANT NOTE: In a future version of XEmacs, the user-specific
105 package hierarchy will move from ~/.xemacs to ~/.xemacs/packages.
106
107
108 87
109 4) In the top level directory of the XEmacs distribution, run the 88 4) In the top level directory of the XEmacs distribution, run the
110 program `configure' as follows: 89 program `configure' as follows:
111 90
112 ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ... 91 ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ...
313 292
314 The `--rel-alloc' option can be used to either enable or disable use 293 The `--rel-alloc' option can be used to either enable or disable use
315 of the relocating allocator. Turning on --rel-alloc will allow XEmacs 294 of the relocating allocator. Turning on --rel-alloc will allow XEmacs
316 to return unused memory to the operating system, thereby reducing its 295 to return unused memory to the operating system, thereby reducing its
317 memory footprint. However, it may make XEmacs runs more slowly, 296 memory footprint. However, it may make XEmacs runs more slowly,
318 especially if your system's `mmap' implementation is missing or 297 especially if your system's `mmap' implemntation is missing or
319 inefficient. Generally, it's best to go with the default 298 inefficient. Generally, it's best to go with the default
320 configuration for your system. You can tweak this based on how you 299 configuration for your system. You can tweak this based on how you
321 use XEmacs, and the memory and cpu resources available on your system. 300 use XEmacs, and the memory and cpu resources available on your system.
322 301
323 The `--with-system-malloc' option can be use to either enable or 302 The `--use-system-malloc' option can be use to either enable or
324 disable use of the system malloc. Generally, it's best to go with the 303 disable use of the system malloc. Generally, it's best to go with the
325 default configuration for your system. Note that on many systems 304 default configuration for your system. Note that on many systems
326 using the system malloc disables the use of the relocating allocator. 305 using the system malloc disables the use of the relocating allocator.
327 306
328 The `--with-debug-malloc' option can be used to link a special debugging 307 The `--use-debug-malloc' option can be used to link a special debugging
329 version of malloc. Debug Malloc is not included with XEmacs, is 308 version of malloc. Debug Malloc is not included with XEmacs, is
330 intended for use only by the developers and may be obtained from 309 intended for use only by the developers and may be obtained from
331 <URL:http://www.letters.com/dmalloc/>. 310 <URL:http://www.letters.com/dmalloc/>.
332 311
333 The `--debug' and `--error-checking' options are intended for use only 312 The `--debug' and `--error-checking' options are intended for use only
341 additional information, useful for debugging. Another help for 320 additional information, useful for debugging. Another help for
342 determining configure failures is the file `config.log', which 321 determining configure failures is the file `config.log', which
343 contains the results of the compile and link tests used by configure. 322 contains the results of the compile and link tests used by configure.
344 323
345 The `--with-mule' option enables (MUlti-Lingual Emacs) support, needed 324 The `--with-mule' option enables (MUlti-Lingual Emacs) support, needed
346 to support non-Latin-1 (including Asian) languages. The Mule support 325 to suport non-Latin-1 (including Asian) languages. The Mule support
347 is not yet as stable or efficient as the `Latin1' support. Enabling 326 is not yet as stable or efficient as the `Latin1' support. Enabling
348 Mule support requires the mule-base package installed prior to 327 Mule support requires the mule-base package installed prior to
349 building XEmacs. The following options require Mule support: 328 building XEmacs. The following options require Mule support:
350 329
351 The `--with-xim' option enables use of the X11 XIM mechanism to allow 330 The `--with-xim' option enables use of the X11 XIM mechanism to allow
404 When it is done, `configure' prints a description of what it did and 383 When it is done, `configure' prints a description of what it did and
405 creates a shell script `config.status' which, when run, recreates the 384 creates a shell script `config.status' which, when run, recreates the
406 same configuration. If `configure' exits with an error after 385 same configuration. If `configure' exits with an error after
407 disturbing the status quo, it removes `config.status'. 386 disturbing the status quo, it removes `config.status'.
408 387
409 5) Look at `./lisp/paths.el'; if some of those values are not right 388 4) Look at `./lisp/paths.el'; if some of those values are not right
410 for your system, set up the file `./lisp/site-init.el' with XEmacs 389 for your system, set up the file `./lisp/site-init.el' with XEmacs
411 Lisp code to override them; it is not a good idea to edit paths.el 390 Lisp code to override them; it is not a good idea to edit paths.el
412 itself. YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES, 391 itself. YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES,
413 rather than `defvar', as used by `./lisp/paths.el'. For example, 392 rather than `defvar', as used by `./lisp/paths.el'. For example,
414 393
420 Before you override a variable this way, *look at the value* that the 399 Before you override a variable this way, *look at the value* that the
421 variable gets by default! Make sure you know what kind of value the 400 variable gets by default! Make sure you know what kind of value the
422 variable should have. If you don't pay attention to what you are 401 variable should have. If you don't pay attention to what you are
423 doing, you'll make a mistake. 402 doing, you'll make a mistake.
424 403
425 Things may malfunction if the variable `directory-abbrev-alist' is not 404 Things may malfunction if the variable `directory-abbrev-alist' is not set
426 set up to translate "temporary" automounter mount points into the 405 up to translate "temporary" automounter mount points into the canonical
427 canonical form. XEmacs tries to detect how your automounter is 406 form. The default value of this variable contains the translation
428 configured. If you have an unusual automounter configuration that 407
429 XEmacs cannot detect, you may need to change the value of 408 ("^/tmp_mnt/" . "/")
430 `directory-abbrev-alist'. 409
431 410 meaning translate "/tmp_mnt/net/FOO" into "/net/FOO", which is appropriate
432 6) Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs 411 for the default configuration of the Sun automounter, but which may be
412 inappropriate for different vendor's automounters, or if you have customized
413 your mount-point names.
414
415 5) Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs
433 Lisp code you want XEmacs to load before it is dumped out. Use 416 Lisp code you want XEmacs to load before it is dumped out. Use
434 site-load.el for additional libraries if you arrange for their 417 site-load.el for additional libraries if you arrange for their
435 documentation strings to be in the lib-src/DOC file (see 418 documentation strings to be in the lib-src/DOC file (see
436 src/Makefile.in.in if you wish to figure out how to do that). For all 419 src/Makefile.in.in if you wish to figure out how to do that). For all
437 else, use site-init.el. 420 else, use site-init.el.
446 See `./PROBLEMS' for more details on which systems this affects. 429 See `./PROBLEMS' for more details on which systems this affects.
447 430
448 The `site-*.el' files are nonexistent in the distribution. You do not 431 The `site-*.el' files are nonexistent in the distribution. You do not
449 need to create them if you have nothing to put in them. 432 need to create them if you have nothing to put in them.
450 433
451 7) Refer to the file `./etc/TERMS' for information on fields you may 434 6) Refer to the file `./etc/TERMS' for information on fields you may
452 wish to add to various termcap entries. The files `./etc/termcap.ucb' 435 wish to add to various termcap entries. The files `./etc/termcap.ucb'
453 and `./etc/termcap.dat' may already contain appropriately-modified 436 and `./etc/termcap.dat' may already contain appropriately-modified
454 entries. 437 entries.
455 438
456 8) Run `make' in the top directory of the XEmacs distribution to finish 439 7) Run `make' in the top directory of the XEmacs distribution to finish
457 building XEmacs in the standard way. The final executable file is 440 building XEmacs in the standard way. The final executable file is
458 named `src/emacs'. You can execute this file "in place" without 441 named `src/emacs'. You can execute this file "in place" without
459 copying it, if you wish; then it automatically uses the sibling 442 copying it, if you wish; then it automatically uses the sibling
460 directories ../lisp, ../lib-src, ../info. 443 directories ../lisp, ../lib-src, ../info.
461 444
515 install XEmacs's libraries and data files or where XEmacs should search 498 install XEmacs's libraries and data files or where XEmacs should search
516 for its lisp files by giving values for `make' variables as part of 499 for its lisp files by giving values for `make' variables as part of
517 the command. See the section below called `MAKE VARIABLES' for more 500 the command. See the section below called `MAKE VARIABLES' for more
518 information on this. 501 information on this.
519 502
520 9) If your system uses lock files to interlock access to mailer inbox 503 8) If your system uses lock files to interlock access to mailer inbox files,
521 files, then you might need to make the movemail program setuid or 504 then you might need to make the movemail program setuid or setgid
522 setgid to enable it to write the lock files. We believe this is safe. 505 to enable it to write the lock files. We believe this is safe.
523 The setuid/setgid bits need not be set on any other XEmacs-related 506 The setuid/setgid bits need not be set on any other XEmacs-related
524 executables. 507 executables.
525 508
526 10) You are done with the hard part! You can remove executables and 509 9) You are done with the hard part! You can remove executables and
527 object files from the build directory by typing `make clean'. To also 510 object files from the build directory by typing `make clean'. To also
528 remove the files that `configure' created (so you can compile XEmacs 511 remove the files that `configure' created (so you can compile XEmacs
529 for a different configuration), type `make distclean'. 512 for a different configuration), type `make distclean'.
530 513
531 11) You should now go to the XEmacs web page at http://www.xemacs.org/ 514 10) You should now go to the XEmacs web page at http://www.xemacs.org/
532 and decide what additional Lisp support you wish to have. 515 and decide what additional Lisp support you wish to have.
533 516
534 MAKE VARIABLES 517 MAKE VARIABLES
535 518
536 You can change where the build process installs XEmacs and its data 519 You can change where the build process installs XEmacs and its data
667 see which operating system and architecture description files from 650 see which operating system and architecture description files from
668 `src/s' and `src/m' should be used for that configuration name. Edit 651 `src/s' and `src/m' should be used for that configuration name. Edit
669 `src/config.h', and change the two `#include' directives to include 652 `src/config.h', and change the two `#include' directives to include
670 the appropriate system and architecture description files. 653 the appropriate system and architecture description files.
671 654
672 3) Edit `./src/config.h' to set the right options for your system. If 655 2) Edit `./src/config.h' to set the right options for your system. If
673 you need to override any of the definitions in the s/*.h and m/*.h 656 you need to override any of the definitions in the s/*.h and m/*.h
674 files for your system and machine, do so by editing config.h, not by 657 files for your system and machine, do so by editing config.h, not by
675 changing the s/*.h and m/*.h files. Occasionally you may need to 658 changing the s/*.h and m/*.h files. Occasionally you may need to
676 redefine parameters used in `./lib-src/movemail.c'. 659 redefine parameters used in `./lib-src/movemail.c'.
677 660
678 4) If you're going to use the make utility to build XEmacs, you will 661 3) If you're going to use the make utility to build XEmacs, you will
679 still need to run `configure' first, giving the appropriate values for 662 still need to run `configure' first, giving the appropriate values for
680 the variables in the sections entitled "Things `configure' Might Edit" 663 the variables in the sections entitled "Things `configure' Might Edit"
681 and "Where To Install Things." Note that you may only need to change 664 and "Where To Install Things." Note that you may only need to change
682 the variables `prefix' and `exec_prefix', since the rest of the 665 the variables `prefix' and `exec_prefix', since the rest of the
683 variables have reasonable defaults based on them. For each Makefile 666 variables have reasonable defaults based on them. For each Makefile
773 debugging. 756 debugging.
774 757
775 758
776 PROBLEMS 759 PROBLEMS
777 760
778 The most likely problem is that you forgot to read and follow the
779 directions in README.packages. You can not have a working XEmacs
780 without downloading some additional packages.
781
782 See the file PROBLEMS in this directory for a list of various 761 See the file PROBLEMS in this directory for a list of various
783 problems sometimes encountered, and what to do about them. 762 problems sometimes encountered, and what to do about them.
784 763
785 764
786 If all else fails, please see etc/InstallGuide courtesy 765 If all else fails, please see etc/InstallGuide courtesy