comparison INSTALL @ 108966:6f4e41648c3f

Make compressing the info files optional. * configure.in (--without-compress-info): New option. (GZIP_INFO): New output variable. * Makefile.in (GZIP_INFO): New, set by configure. (install-arch-indep): Don't gzip info pages if GZIP_INFO is nil. Handle man pages in the same way. * etc/NEWS: Re-order installation section, and add new item.
author Glenn Morris <rgm@gnu.org>
date Thu, 10 Jun 2010 20:35:40 -0700
parents dedcf813aa69
children 83458f5cdc38
comparison
equal deleted inserted replaced
108965:89ec3a7ebb87 108966:6f4e41648c3f
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 See the end of the file for license conditions. 5 See the end of the file for license conditions.
6 6
7 7
8 This file contains general information. For more specific information 8 This file contains general information. For more specific information
9 for the Windows, GNUstep/Mac OS X, and MS-DOS ports, also see the files 9 for the MS-Windows, GNUstep/Mac OS X, and MS-DOS ports, also see the files
10 nt/INSTALL nextstep/INSTALL, and msdos/INSTALL. For information 10 nt/INSTALL, nextstep/INSTALL, and msdos/INSTALL. For information
11 specific to building from a Bazaar checkout (rather than a release), see 11 specific to building from a Bazaar checkout (rather than a release), see
12 the file INSTALL.BZR. 12 the file INSTALL.BZR.
13 13
14 14
15 BASIC INSTALLATION 15 BASIC INSTALLATION
16 16
17 The simplest way to build Emacs is to use the `configure' shell script 17 On most Unix systems, you can build Emacs by first running the
18 which attempts to guess correct values for various system-dependent 18 `configure' shell script. This attempts to deduce correct values for
19 variables and features and find the directories where various system 19 various system-dependent variables and features, and find the
20 headers and libraries are kept. It then creates a `Makefile' in each 20 directories where certain system headers and libraries are kept.
21 subdirectory and a `config.h' file containing system-dependent 21 In a few cases, you may need to explicitly tell configure where to
22 definitions. Running the `make' utility then builds the package for 22 find some things, or what options to use.
23 your system. 23
24 `configure' creates a `Makefile' in several subdirectories, and a
25 `src/config.h' file containing system-dependent definitions.
26 Running the `make' utility then builds the package for your system.
24 27
25 Here's the procedure to build Emacs using `configure' on systems which 28 Here's the procedure to build Emacs using `configure' on systems which
26 are supported by it. If this simplified procedure fails, or if you 29 are supported by it. In rare cases, if the simplified procedure fails,
27 are using a platform such as MS-Windows, where `configure' script 30 you might need to use various non-default options, and maybe perform
28 doesn't work, you might need to use various non-default options, and 31 some of the steps manually. The more detailed description in the rest
29 maybe perform some of the steps manually. The more detailed 32 of the sections of this guide will help you do that, so please refer
30 description in the rest of the sections of this guide will help you do 33 to those sections if you need to.
31 that, so please refer to them if the simple procedure does not work. 34
32 35 1. Make sure your system has at least 230 MB of free disk space.
33 1. Make sure your system has at least 120 MB of free disk space. 36 This is for Emacs 23.2; Emacs gets bigger as more features are added.
37 The size of the final installed Emacs is about half this; see below.
38 This includes the space-saving that comes from automatically
39 compressing the Lisp source files on installation.
34 40
35 2a. `cd' to the directory where you unpacked Emacs and invoke the 41 2a. `cd' to the directory where you unpacked Emacs and invoke the
36 `configure' script: 42 `configure' script:
37 43
38 ./configure 44 ./configure
50 about the system configuration. Read those details carefully 56 about the system configuration. Read those details carefully
51 looking for anything suspicious, such as wrong CPU and operating 57 looking for anything suspicious, such as wrong CPU and operating
52 system names, wrong places for headers or libraries, missing 58 system names, wrong places for headers or libraries, missing
53 libraries that you know are installed on your system, etc. 59 libraries that you know are installed on your system, etc.
54 60
55 If you find anything wrong, you will have to pass to `configure' 61 If you find anything wrong, you may have to pass to `configure'
56 explicit machine configuration name, and one or more options 62 one or more options specifying the explicit machine configuration
57 which tell it where to find various headers and libraries; refer 63 name, where to find various headers and libraries, etc.
58 to DETAILED BUILDING AND INSTALLATION section below. 64 Refer to the section DETAILED BUILDING AND INSTALLATION below.
59 65
60 If `configure' didn't find some image support libraries, such as 66 If `configure' didn't find some (optional) image support libraries,
61 Xpm, jpeg, etc., and you want to use them refer to the subsection 67 such as Xpm, jpeg, etc., and you want to use them refer to the
62 "Image support libraries", below. 68 subsection "Image support libraries" below.
63 69
64 If the details printed by `configure' don't make any sense to 70 If the details printed by `configure' don't make any sense to
65 you, assume that `configure' did its job and proceed. 71 you, but there are no obvious errors, assume that `configure' did
72 its job and proceed.
66 73
67 4. If you need to run the `configure' script more than once (e.g., 74 4. If you need to run the `configure' script more than once (e.g.,
68 with some non-default options), always clean the source 75 with some non-default options), always clean the source
69 directories before running `configure' again: 76 directories before running `configure' again:
70 77
77 84
78 6. If `make' succeeds, it will build an executable program `emacs' 85 6. If `make' succeeds, it will build an executable program `emacs'
79 in the `src' directory. You can try this program, to make sure 86 in the `src' directory. You can try this program, to make sure
80 it works: 87 it works:
81 88
82 src/emacs -q 89 src/emacs -Q
83 90
84 7. Assuming that the program `src/emacs' starts and displays its 91 7. Assuming that the program `src/emacs' starts and displays its
85 opening screen, you can install the program and its auxiliary 92 opening screen, you can install the program and its auxiliary
86 files into their installation directories: 93 files into their installation directories:
87 94
91 you may remove the program binaries and object files from the 98 you may remove the program binaries and object files from the
92 directory where you built Emacs: 99 directory where you built Emacs:
93 100
94 make clean 101 make clean
95 102
96 You can also save some space by compressing (with `gzip') Info files 103 You can delete the entire build directory if you do not plan to
97 and installed Lisp source (.el) files which have corresponding .elc 104 build Emacs again.
98 versions. 105
106 Note that the install automatically saves space by compressing
107 (provided you have the `gzip' program) those installed Lisp source (.el)
108 files that have corresponding .elc versions. You may also wish
109 to compress the installed Info files.
99 110
100 111
101 ADDITIONAL DISTRIBUTION FILES 112 ADDITIONAL DISTRIBUTION FILES
102 113
103 * Complex Text Layout support libraries 114 * Complex Text Layout support libraries
155 contain header files and a library archive. Otherwise, you can 166 contain header files and a library archive. Otherwise, you can
156 download and build libraries from sources. None of them are vital for 167 download and build libraries from sources. None of them are vital for
157 running Emacs; however, note that Emacs will not be able to use 168 running Emacs; however, note that Emacs will not be able to use
158 colored icons in the toolbar if XPM support is not compiled in. 169 colored icons in the toolbar if XPM support is not compiled in.
159 170
160 Here's the list of these optional libraries, and the URLs where they 171 Here's the list of some of these optional libraries, and the URLs
161 can be found: 172 where they can be found (in the unlikely event that your distribution
162 173 does not provide them):
163 . libXaw3d for fancy 3D-style 174
164 scroll bars: ftp://ftp.x.org/contrib/widgets/Xaw3d/ 175 . libXaw3d http://directory.fsf.org/project/xaw3d/
165 . libxpm for XPM: ftp://ftp.x.org/contrib/libraries/ 176 . libxpm for XPM: http://www.x.org/releases/current/src/lib/
166 Get version 3.4k or later, which lets Emacs 177 . libpng for PNG: http://www.libpng.org/
167 use its own color allocation functions.
168 . libpng for PNG: ftp://ftp.simplesystems.org/pub/libpng/png/
169 . libz (for PNG): http://www.zlib.net/ 178 . libz (for PNG): http://www.zlib.net/
170 . libjpeg for JPEG: ftp://ftp.uu.net/graphics/jpeg/ 179 . libjpeg for JPEG: http://www.ijg.org/ (use a version newer than 6a)
171 Get version 6b -- 6a is reported to fail in
172 Emacs.
173 . libtiff for TIFF: http://www.libtiff.org/ 180 . libtiff for TIFF: http://www.libtiff.org/
174 . libgif for GIF: http://sourceforge.net/projects/giflib/ 181 . libgif for GIF: http://sourceforge.net/projects/giflib/
175 182
176 Emacs will configure itself to build with these libraries if the 183 Emacs will configure itself to build with these libraries if the
177 `configure' script finds them on your system, unless you supply the 184 `configure' script finds them on your system, unless you supply the
181 --without-LIB options to `configure'. See below for more details. 188 --without-LIB options to `configure'. See below for more details.
182 189
183 * Extra fonts 190 * Extra fonts
184 191
185 The Emacs distribution does not include fonts and does not install 192 The Emacs distribution does not include fonts and does not install
186 them. You must do that yourself. 193 them. You must do that yourself, if you need more fonts than your
194 distribution normally provides.
187 195
188 Emacs running on the GNU system supports both X fonts and local fonts 196 Emacs running on the GNU system supports both X fonts and local fonts
189 (i.e. the fonts managed by the fontconfig library). 197 (i.e. the fonts managed by the fontconfig library).
190 198
191 For `Unicode' (ISO 10646) X fonts, see 199 For `Unicode' (ISO 10646) X fonts, see
192 <URL:http://czyborra.com/unifont/> (packaged in Debian), 200 <URL:http://czyborra.com/unifont/> (packaged in Debian),
193 <URL:http://openlab.ring.gr.jp/efont/> (packaged in Debian). (In 201 <URL:http://openlab.ring.gr.jp/efont/> (packaged in Debian).
194 recent Debian versions, there is an extensive `misc-fixed' iso10646-1 202 (In recent Debian versions, there is an extensive `misc-fixed'
195 in the default X installation.) Perhaps also see 203 iso10646-1 in the default X installation.) Perhaps also see
196 <URL:http://www.cl.cam.ac.uk/%7Emgk25/ucs-fonts.html>. 204 <URL:http://www.cl.cam.ac.uk/%7Emgk25/ucs-fonts.html>.
197 205
198 <URL:http://czyborra.com/charsets/> has basic fonts for Emacs's 206 <URL:http://czyborra.com/charsets/> has basic fonts for Emacs's
199 ISO-8859 charsets. 207 ISO-8859 charsets.
200
201 XFree86 release 4 (from <URL:ftp://ftp.xfree86.org/pub/XFree86/> and mirrors)
202 contains font support for most, if not all, of the charsets that Emacs
203 currently supports, including iso10646-1 encoded fonts for use with
204 the mule-unicode charsets. The font files should also be usable with
205 older X releases. Note that XFree 4 contains many iso10646-1 fonts
206 with minimal character repertoires, which can cause problems -- see
207 etc/PROBLEMS.
208 208
209 BDF Unicode fonts etl-unicode.tar.gz are available from 209 BDF Unicode fonts etl-unicode.tar.gz are available from
210 <URL:ftp://ftp.x.org/contrib/fonts/> and 210 <URL:ftp://ftp.x.org/contrib/fonts/> and
211 <URL:ftp://ftp.xfree86.org/pub/mirror/X.Org/contrib/fonts/>. These 211 <URL:ftp://ftp.xfree86.org/pub/mirror/X.Org/contrib/fonts/>. These
212 fonts can also be used by ps-print and ps-mule to print Unicode 212 fonts can also be used by ps-print and ps-mule to print Unicode
215 Finally, the Web page <URL:http://www.gnu.org/software/freefont/> 215 Finally, the Web page <URL:http://www.gnu.org/software/freefont/>
216 lists a large number of free Unicode fonts. 216 lists a large number of free Unicode fonts.
217 217
218 * GNU/Linux development packages 218 * GNU/Linux development packages
219 219
220 Many GNU/Linux systems do not come with development packages by 220 Many GNU/Linux systems do not come with development packages by default;
221 default; they just include the files that you need to run Emacs, but 221 they include the files that you need to run Emacs, but not those you
222 not those you need to compile it. For example, to compile Emacs with 222 need to compile it. For example, to compile Emacs with support for X
223 X11 support, you may need to install the special `X11 development' 223 and graphics libraries, you may need to install the `X development'
224 package. For example, in April 2003, the package names to install 224 package(s) and development versions of the jpeg, png, etc. packages.
225 were `XFree86-devel' and `Xaw3d-devel' on Red Hat. On Debian, the 225
226 packages necessary to build the installed version should be 226 The names of the packages that you need varies according to the
227 sufficient; they can be installed using `apt-get build-dep emacs21' in 227 GNU/Linux distribution that you use, and the options that you want to
228 Debian 3 and above. 228 configure Emacs with. On Debian-based systems, you can install all the
229 packages needed to build the installed version of Emacs with a command
230 like `apt-get build-dep emacs23'.
229 231
230 232
231 DETAILED BUILDING AND INSTALLATION: 233 DETAILED BUILDING AND INSTALLATION:
232 234
233 (This is for a Unix or Unix-like system. For MS-DOS and Windows 3.X, 235 (This is for a Unix or Unix-like system. For MS-DOS and Windows 3.X,
238 1) Make sure your system has enough swapping space allocated to handle 240 1) Make sure your system has enough swapping space allocated to handle
239 a program whose pure code is 1.5 MB and whose data area is at 241 a program whose pure code is 1.5 MB and whose data area is at
240 least 2.8 MB and can reach 100 MB or more. If the swapping space is 242 least 2.8 MB and can reach 100 MB or more. If the swapping space is
241 insufficient, you will get an error in the command `temacs -batch -l 243 insufficient, you will get an error in the command `temacs -batch -l
242 loadup dump', found in `./src/Makefile.in', or possibly when 244 loadup dump', found in `./src/Makefile.in', or possibly when
243 running the final dumped Emacs. 245 running the final dumped Emacs. (This should not be an issue
244 246 on any recent system.)
245 Building Emacs requires about 140 MB of disk space (including the 247
246 Emacs sources) Once installed, Emacs occupies about 77 MB in the file 248 Building Emacs requires about 230 MB of disk space (including the
249 Emacs sources). Once installed, Emacs occupies about 120 MB in the file
247 system where it is installed; this includes the executable files, Lisp 250 system where it is installed; this includes the executable files, Lisp
248 libraries, miscellaneous data files, and on-line documentation. If 251 libraries, miscellaneous data files, and on-line documentation. If
249 the building and installation take place in different directories, 252 the building and installation take place in different directories,
250 then the installation procedure momentarily requires 140+77 MB. 253 then the installation procedure momentarily requires 230+120 MB.
251 254
252 2) Consult `./etc/MACHINES' to see what configuration name you should 255 2) In the unlikely event that `configure' does not detect your system
253 give to the `configure' program. That file offers hints for 256 type correctly, consult `./etc/MACHINES' to see what --host, --build
254 getting around some possible installation problems. The file lists 257 options you should pass to `configure'. That file also offers hints
255 many different configurations, but only the part for your machine and 258 for getting around some possible installation problems.
256 operating system is relevant. (The list is arranged in alphabetical
257 order by the vendor name.)
258 259
259 3) You can build Emacs in the top-level Emacs source directory 260 3) You can build Emacs in the top-level Emacs source directory
260 or in a separate directory. 261 or in a separate directory.
261 262
262 3a) To build in the top-level Emacs source directory, go to that 263 3a) To build in the top-level Emacs source directory, go to that
263 directory and run the program `configure' as follows: 264 directory and run the program `configure' as follows:
264 265
265 ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ... 266 ./configure [--OPTION[=VALUE]] ...
266 267
267 The CONFIGURATION-NAME argument should be a configuration name given 268 If `configure' cannot determine your system type, try again
268 in `./etc/MACHINES', with the system version number added at the end. 269 specifying the proper --build, --host options explicitly.
269
270 You should try first omitting CONFIGURATION-NAME. This way,
271 `configure' will try to guess your system type. If it cannot guess,
272 or if something goes wrong in building or installing Emacs this way,
273 try again specifying the proper CONFIGURATION-NAME explicitly.
274 270
275 If you don't want X support, specify `--with-x=no'. If you omit this 271 If you don't want X support, specify `--with-x=no'. If you omit this
276 option, `configure' will try to figure out for itself whether your 272 option, `configure' will try to figure out for itself whether your
277 system has X, and arrange to use it if present. 273 system has X, and arrange to use it if present.
278 274
281 object libraries used with the X Window System. Normally, `configure' 277 object libraries used with the X Window System. Normally, `configure'
282 is able to find them; these options are necessary if you have your X 278 is able to find them; these options are necessary if you have your X
283 Window System files installed in unusual places. These options also 279 Window System files installed in unusual places. These options also
284 accept a list of directories, separated with colons. 280 accept a list of directories, separated with colons.
285 281
282 [gtk is default]
286 To get more attractive menus, you can specify an X toolkit when you 283 To get more attractive menus, you can specify an X toolkit when you
287 configure Emacs; use the option `--with-x-toolkit=TOOLKIT', where 284 configure Emacs; use the option `--with-x-toolkit=TOOLKIT', where
288 TOOLKIT is `athena', `motif' or `gtk' (`yes' and `lucid' are synonyms 285 TOOLKIT is `gtk', `athena', or `motif' (`yes' and `lucid' are synonyms
289 for `athena'). On some systems, it does not work to use a toolkit 286 for `athena'). On some systems, it does not work to use a toolkit
290 with shared libraries. A free implementation of Motif, called 287 with shared libraries. A free implementation of Motif, called
291 LessTif, is available from <http://www.lesstif.org>. Compiling with 288 LessTif, is available from <http://www.lesstif.org>. Compiling with
292 LessTif or Motif causes a standard File Selection Dialog to pop up 289 LessTif or Motif causes a standard File Selection Dialog to pop up
293 when you invoke file commands with the mouse. You can get fancy 290 when you invoke file commands with the mouse. You can get fancy
294 3D-style scroll bars, even without LessTif/Motif, if you have the 291 3D-style scroll bars, even without Gtk or LessTif/Motif, if you have the
295 Xaw3d library installed (see "Image support libraries" above for Xaw3d 292 Xaw3d library installed (see "Image support libraries" above for Xaw3d
296 availability). 293 availability).
297 294
298 If `--with-x-toolkit=gtk' is specified, you can tell configure where 295 If `--with-x-toolkit=gtk' is specified, you can tell configure where
299 to search for GTK by specifying `--with-pkg-config-prog=PATH' where 296 to search for GTK by specifying `--with-pkg-config-prog=PATH' where
323 --without-png for PNG image support 320 --without-png for PNG image support
324 321
325 Use --without-toolkit-scroll-bars to disable LessTif/Motif or Xaw3d 322 Use --without-toolkit-scroll-bars to disable LessTif/Motif or Xaw3d
326 scroll bars. 323 scroll bars.
327 324
328 Use --without-xim to inhibit the default use of X Input Methods. In 325 Use --without-xim to inhibit the default use of X Input Methods.
329 this case, the X resource useXIM can be used to turn on use of XIM. 326 In this case, the X resource useXIM can be used to turn on use of XIM.
330 327
331 Use --disable-largefile omits support for files larger than 2GB on 328 Use --disable-largefile to omit support for files larger than 2GB on
332 systems which support that. 329 systems which support that.
333 330
334 Use --without-sound to disable sound support. 331 Use --without-sound to disable sound support.
335 332
336 The `--prefix=PREFIXDIR' option specifies where the installation process 333 The `--prefix=PREFIXDIR' option specifies where the installation process
337 should put emacs and its data files. This defaults to `/usr/local'. 334 should put emacs and its data files. This defaults to `/usr/local'.
338 - Emacs (and the other utilities users run) go in PREFIXDIR/bin 335 - Emacs (and the other utilities users run) go in PREFIXDIR/bin
339 (unless the `--exec-prefix' option says otherwise). 336 (unless the `--exec-prefix' option says otherwise).
340 - The architecture-independent files go in PREFIXDIR/share/emacs/VERSION 337 - The architecture-independent files go in PREFIXDIR/share/emacs/VERSION
341 (where VERSION is the version number of Emacs, like `19.27'). 338 (where VERSION is the version number of Emacs, like `23.2').
342 - The architecture-dependent files go in 339 - The architecture-dependent files go in
343 PREFIXDIR/libexec/emacs/VERSION/CONFIGURATION 340 PREFIXDIR/libexec/emacs/VERSION/CONFIGURATION
344 (where CONFIGURATION is the configuration name, like mips-dec-ultrix4.2), 341 (where CONFIGURATION is the configuration name, like
345 unless the `--exec-prefix' option says otherwise. 342 i686-pc-linux-gnu), unless the `--exec-prefix' option says otherwise.
346 343
347 The `--exec-prefix=EXECDIR' option allows you to specify a separate 344 The `--exec-prefix=EXECDIR' option allows you to specify a separate
348 portion of the directory tree for installing architecture-specific 345 portion of the directory tree for installing architecture-specific
349 files, like executables and utility programs. If specified, 346 files, like executables and utility programs. If specified,
350 - Emacs (and the other utilities users run) go in EXECDIR/bin, and 347 - Emacs (and the other utilities users run) go in EXECDIR/bin, and
352 EXECDIR/libexec/emacs/VERSION/CONFIGURATION. 349 EXECDIR/libexec/emacs/VERSION/CONFIGURATION.
353 EXECDIR/bin should be a directory that is normally in users' PATHs. 350 EXECDIR/bin should be a directory that is normally in users' PATHs.
354 351
355 For example, the command 352 For example, the command
356 353
357 ./configure mips-dec-ultrix --with-x11 354 ./configure --build=i386-linux-gnu --without-sound
358 355
359 configures Emacs to build for a DECstation running Ultrix, with 356 configures Emacs to build for a 32-bit GNU/Linux distribution,
360 support for the X11 window system. 357 without sound.
361 358
362 `configure' doesn't do any compilation or installation 359 `configure' doesn't do any compilation or installation itself.
363 itself. It just creates the files that influence those things: 360 It just creates the files that influence those things:
364 `./Makefile', `lib-src/Makefile', `oldXMenu/Makefile', 361 `./Makefile' in the top-level directory and several subdirectories;
365 `lwlib/Makefile', `src/Makefile', and `./src/config.h'. For details 362 and `./src/config.h'. For details on exactly what it does, see the
366 on exactly what it does, see the section called `CONFIGURATION BY 363 section called `CONFIGURATION BY HAND', below.
367 HAND', below.
368 364
369 When it is done, `configure' prints a description of what it did and 365 When it is done, `configure' prints a description of what it did and
370 creates a shell script `config.status' which, when run, recreates the 366 creates a shell script `config.status' which, when run, recreates the
371 same configuration. If `configure' exits with an error after 367 same configuration. If `configure' exits with an error after
372 disturbing the status quo, it removes `config.status'. `configure' 368 disturbing the status quo, it removes `config.status'. `configure'
434 Emacs source code in the directory that `configure' is in. 430 Emacs source code in the directory that `configure' is in.
435 431
436 To build in a separate directory, you must use a version of `make' 432 To build in a separate directory, you must use a version of `make'
437 that supports the `VPATH' variable, such as GNU `make'. 433 that supports the `VPATH' variable, such as GNU `make'.
438 434
439 3c) Some people try to build in a separate directory by filling 435 (Do not try to build in a separate directory by creating many links
440 it full of symlinks to the files in the real source directory. 436 to the real source directory -- there is no need, and installation
441 If you do that, `make all' does work, but `make install' fails: 437 will fail.)
442 it copies the symbolic links rather than the actual files.
443
444 As far as is known, there is no particular reason to use
445 a directory full of links rather than use the standard GNU
446 facilities to build in a separate directory (see 3b above).
447 438
448 4) Look at `./lisp/paths.el'; if some of those values are not right 439 4) Look at `./lisp/paths.el'; if some of those values are not right
449 for your system, set up the file `./lisp/site-init.el' with Emacs 440 for your system, set up the file `./lisp/site-init.el' with Emacs
450 Lisp code to override them; it is not a good idea to edit paths.el 441 Lisp code to override them; it is not a good idea to edit paths.el
451 itself. YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES, 442 itself. YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES,
452 rather than `defvar', as used by `./lisp/paths.el'. For example, 443 rather than `defvar', as used by `./lisp/paths.el'. For example,
453 444
454 (setq news-inews-program "/usr/bin/inews") 445 (setq news-inews-program "/usr/bin/inews")
455 446
456 is how you would override the default value of the variable 447 is how you would override the default value of the variable
457 news-inews-program (which is "/usr/local/inews"). 448 news-inews-program.
458 449
459 Before you override a variable this way, *look at the value* that the 450 Before you override a variable this way, *look at the value* that the
460 variable gets by default! Make sure you know what kind of value the 451 variable gets by default! Make sure you know what kind of value the
461 variable should have. If you don't pay attention to what you are 452 variable should have. If you don't pay attention to what you are
462 doing, you'll make a mistake. 453 doing, you'll make a mistake.
471 462
472 If you set load-path to a different value in site-init.el or 463 If you set load-path to a different value in site-init.el or
473 site-load.el, Emacs will use *precisely* that value when it starts up 464 site-load.el, Emacs will use *precisely* that value when it starts up
474 again. If you do this, you are on your own! 465 again. If you do this, you are on your own!
475 466
476 Note that, on some systems, the code you place in site-init.el must
477 not use expand-file-name or any other function which may look
478 something up in the system's password and user information database.
479 See `./etc/PROBLEMS' for more details on which systems this affects.
480
481 The `site-*.el' files are nonexistent in the distribution. You do not 467 The `site-*.el' files are nonexistent in the distribution. You do not
482 need to create them if you have nothing to put in them. 468 need to create them if you have nothing to put in them.
483 469
484 6) Refer to the file `./etc/TERMS' for information on fields you may 470 6) Refer to the file `./etc/TERMS' for information on fields you may
485 wish to add to various termcap entries. The files `./etc/termcap.ucb' 471 wish to add to various termcap entries.
486 and `./etc/termcap.dat' may already contain appropriately-modified
487 entries.
488 472
489 7) Run `make' in the top directory of the Emacs distribution to finish 473 7) Run `make' in the top directory of the Emacs distribution to finish
490 building Emacs in the standard way. The final executable file is 474 building Emacs in the standard way. The final executable file is
491 named `src/emacs'. You can execute this file "in place" without 475 named `src/emacs'. You can execute this file "in place" without
492 copying it, if you wish; then it automatically uses the sibling 476 copying it, if you wish; then it automatically uses the sibling
496 installed locations, with `make install'. By default, Emacs's files 480 installed locations, with `make install'. By default, Emacs's files
497 are installed in the following directories: 481 are installed in the following directories:
498 482
499 `/usr/local/bin' holds the executable programs users normally run - 483 `/usr/local/bin' holds the executable programs users normally run -
500 `emacs', `etags', `ctags', `b2m', `emacsclient', 484 `emacs', `etags', `ctags', `b2m', `emacsclient',
501 and `rcs-checkin'. 485 `grep-changelog', and `rcs-checkin'.
502 486
503 `/usr/local/share/emacs/VERSION/lisp' holds the Emacs Lisp library; 487 `/usr/local/share/emacs/VERSION/lisp' holds the Emacs Lisp library;
504 `VERSION' stands for the number of the Emacs version 488 `VERSION' stands for the number of the Emacs version
505 you are installing, like `18.59' or `19.27'. Since the 489 you are installing, like `23.1' or `23.2'. Since the
506 Lisp library changes from one version of Emacs to 490 Lisp library changes from one version of Emacs to
507 another, including the version number in the path 491 another, including the version number in the path
508 allows you to have several versions of Emacs installed 492 allows you to have several versions of Emacs installed
509 at the same time; in particular, you don't have to 493 at the same time; in particular, you don't have to
510 make Emacs unavailable while installing a new version. 494 make Emacs unavailable while installing a new version.
511 495
512 `/usr/local/share/emacs/VERSION/etc' holds the Emacs tutorial, the DOC 496 `/usr/local/share/emacs/VERSION/etc' holds the Emacs tutorial, the DOC
513 file, the `yow' database, and other 497 file, and other architecture-independent files Emacs
514 architecture-independent files Emacs might need while 498 might need while running.
515 running. VERSION is as specified for `.../lisp'.
516 499
517 `/usr/local/libexec/emacs/VERSION/CONFIGURATION-NAME' contains executable 500 `/usr/local/libexec/emacs/VERSION/CONFIGURATION-NAME' contains executable
518 programs used by Emacs that users are not expected to 501 programs used by Emacs that users are not expected to
519 run themselves. 502 run themselves.
520 `VERSION' is the number of the Emacs version you are 503 `VERSION' is the number of the Emacs version you are
521 installing, and `CONFIGURATION-NAME' is the argument 504 installing, and `CONFIGURATION-NAME' is the value
522 you gave to the `configure' program to identify the 505 deduced by the `configure' program to identify the
523 architecture and operating system of your machine, 506 architecture and operating system of your machine,
524 like `mips-dec-ultrix' or `sparc-sun-sunos'. Since 507 like `i686-pc-linux-gnu' or `sparc-sun-sunos'. Since
525 these files are specific to the version of Emacs, 508 these files are specific to the version of Emacs,
526 operating system, and architecture in use, including 509 operating system, and architecture in use, including
527 the configuration name in the path allows you to have 510 the configuration name in the path allows you to have
528 several versions of Emacs for any mix of machines and 511 several versions of Emacs for any mix of machines and
529 operating systems installed at the same time; this is 512 operating systems installed at the same time; this is
531 share the file system Emacs is installed on. 514 share the file system Emacs is installed on.
532 515
533 `/usr/local/share/info' holds the on-line documentation for Emacs, 516 `/usr/local/share/info' holds the on-line documentation for Emacs,
534 known as "info files". Many other GNU programs are 517 known as "info files". Many other GNU programs are
535 documented using info files as well, so this directory 518 documented using info files as well, so this directory
536 stands apart from the other, Emacs-specific 519 stands apart from the other, Emacs-specific directories.
537 directories. 520
538 521 `/usr/local/share/man/man1' holds the man pages for the programs installed
539 `/usr/local/man/man1' holds the man pages for the programs installed
540 in `/usr/local/bin'. 522 in `/usr/local/bin'.
541 523
542 Any version of Emacs, whether installed or not, also looks for Lisp 524 Any version of Emacs, whether installed or not, also looks for Lisp
543 files in these directories. 525 files in these directories.
544 526
597 `datadir' indicates where to put the architecture-independent 579 `datadir' indicates where to put the architecture-independent
598 read-only data files that Emacs refers to while it runs; it 580 read-only data files that Emacs refers to while it runs; it
599 defaults to /usr/local/share. We create the following 581 defaults to /usr/local/share. We create the following
600 subdirectories under `datadir': 582 subdirectories under `datadir':
601 - `emacs/VERSION/lisp', containing the Emacs Lisp library, and 583 - `emacs/VERSION/lisp', containing the Emacs Lisp library, and
602 - `emacs/VERSION/etc', containing the Emacs tutorial, the DOC 584 - `emacs/VERSION/etc', containing the tutorials, DOC file, etc.
603 file, and the `yow' database.
604 `VERSION' is the number of the Emacs version you are installing, 585 `VERSION' is the number of the Emacs version you are installing,
605 like `18.59' or `19.0'. Since these files vary from one version 586 like `23.1' or `23.2'. Since these files vary from one version
606 of Emacs to another, including the version number in the path 587 of Emacs to another, including the version number in the path
607 allows you to have several versions of Emacs installed at the 588 allows you to have several versions of Emacs installed at the
608 same time; this means that you don't have to make Emacs 589 same time; this means that you don't have to make Emacs
609 unavailable while installing a new version. 590 unavailable while installing a new version.
610 591
613 We create the following subdirectories under `libexecdir': 594 We create the following subdirectories under `libexecdir':
614 - `emacs/VERSION/CONFIGURATION-NAME', containing executable 595 - `emacs/VERSION/CONFIGURATION-NAME', containing executable
615 programs used by Emacs that users are not expected to run 596 programs used by Emacs that users are not expected to run
616 themselves. 597 themselves.
617 `VERSION' is the number of the Emacs version you are installing, 598 `VERSION' is the number of the Emacs version you are installing,
618 and `CONFIGURATION-NAME' is the argument you gave to the 599 and `CONFIGURATION-NAME' is the value deduced by the
619 `configure' program to identify the architecture and operating 600 `configure' program to identify the architecture and operating
620 system of your machine, like `mips-dec-ultrix' or 601 system of your machine, like `i686-pc-linux-gnu' or `sparc-sun-sunos'.
621 `sparc-sun-sunos'. Since these files are specific to the version 602 Since these files are specific to the version of Emacs,
622 of Emacs, operating system, and architecture in use, including 603 operating system, and architecture in use, including the
623 the configuration name in the path allows you to have several 604 configuration name in the path allows you to have several
624 versions of Emacs for any mix of machines and operating systems 605 versions of Emacs for any mix of machines and operating
625 installed at the same time; this is useful for sites at which 606 systems installed at the same time; this is useful for sites
626 different kinds of machines share the file system Emacs is 607 at which different kinds of machines share the file system
627 installed on. 608 Emacs is installed on.
628 609
629 `infodir' indicates where to put the info files distributed with 610 `infodir' indicates where to put the info files distributed with
630 Emacs; it defaults to `/usr/local/share/info'. 611 Emacs; it defaults to `/usr/local/share/info'.
631 612
632 `mandir' indicates where to put the man pages for Emacs and its 613 `mandir' indicates where to put the man pages for Emacs and its
633 utilities (like `etags'); it defaults to 614 utilities (like `etags'); it defaults to
634 `/usr/local/man/man1'. 615 `/usr/local/share/man/man1'.
616
617 [here]
635 618
636 `manext' gives the extension the man pages should be installed with. 619 `manext' gives the extension the man pages should be installed with.
637 It should contain a period, followed by the appropriate 620 It should contain a period, followed by the appropriate
638 digit. It defaults to `.1'. For example given the default 621 digit. It defaults to `.1'. For example given the default
639 values for `mandir' and `manext', the Emacs man page would be 622 values for `mandir' and `manext', the Emacs man page would be