11935
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
1 Building and Installing Emacs
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
2 on Windows NT and Windows 95
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
3
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
4 You need a compiler package to build and install Emacs on NT or Win95.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
5 If you don't have one, precompiled versions are available in
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
6 ftp://ftp.cs.washington.edu/pub/ntemacs/<version>.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
7
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
8 Configuring:
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
9
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
10 (1) In previous versions, you needed to edit makefile.def
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
11 to reflect the compiler package that you are using. You should no
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
12 longer have to do this if you have defined the INCLUDE and LIB
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
13 environment variables, as is customary for use with Windows compilers.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
14
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
15 (2) Choose the directory into which Emacs will be installed, and
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
16 edit makefile.nt to define INSTALL_DIR to be this directory. Note
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
17 that if it is not installed in the directory in which it is built,
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
18 the ~16 MB of lisp files will be copied into the installation directory.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
19
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
20 Also, makefile.def is sometimes unpacked read-only; use
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
21
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
22 > attrib -r makefile.def
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
23
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
24 to make it writable.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
25
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
26 Building:
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
27
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
28 (3) The target to compile the sources is "all", and is recursive starting
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
29 one directory up. The makefiles for the NT port are in files named
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
30 "makefile.nt". To get things started, type in this directory:
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
31
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
32 > nmake -f makefile.nt all
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
33
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
34 or use the ebuild.bat file.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
35
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
36 When the files are compiled, you will see some warning messages declaring
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
37 that some functions don't return a value, or that some data conversions
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
38 will be lossy, etc. You can safely ignore these messages. The warnings
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
39 may be fixed in the main FSF source at some point, but until then we
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
40 will just live with them.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
41
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
42 NOTES: You should not have to edit src\paths.h to get Emacs to run
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
43 correctly. All of the variables in src\paths.h are configured
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
44 during start up using the nt\emacs.bat file (which gets installed
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
45 as bin\emacs.bat -- see below).
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
46
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
47 Installing:
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
48
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
49 (4) Currently, Emacs requires a number of environment variables to be set
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
50 for it to run correctly. A batch file, emacs.bat, is provided that
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
51 sets these variables appropriately and then runs the executable.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
52 Before you install Emacs, you first need to edit emacs.bat to
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
53 reflect your installation. To do this, set the emacs_path variable
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
54 to point to the directory into which you will be installing Emacs.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
55 (This should be the same directory you defined INSTALL_DIR to be
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
56 in makefile.def above).
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
57
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
58 (5) Install Emacs. From this directory, type:
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
59
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
60 > nmake -f makefile.nt install
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
61
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
62 or use the install.bat file.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
63
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
64 (6) Create the Emacs startup file. Under Unix, this file is .emacs;
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
65 under NT and Win95, this files is _emacs. (If you would like to
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
66 use a .emacs file that, for example, you share with a Unix version
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
67 of Emacs, you can invoke Emacs with the -l option to specify the
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
68 .emacs file that you would like to load.) Note that Emacs requires
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
69 the environment variable HOME to be set in order for it to locate the
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
70 _emacs file. Ideally, HOME should not be set in the emacs.bat file
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
71 as it will be different for each user. (HOME could be set,
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
72 for example, in the System panel of the Control Panel).
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
73
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
74 (7) Create a program manager icon for the %emacs_path%\emacs.bat file.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
75
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
76 (8) Either click on the icon, or run the emacs.bat file, and away you go.
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
77
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
78 If you would like to resize the command window that Emacs uses,
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
79 or change the font or colors, click on the program manager icon
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
80 to start Emacs. Change the settings using the "-" menu in the upper
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
81 left hand corner of the window, making sure to select the "Save"
|
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff
changeset
|
82 options in the dialog boxes as you do so. Exit Emacs and restart.
|