Mercurial > emacs
comparison nt/INSTALL @ 69567:be544ed33d82
Add concise build instructions.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Sat, 18 Mar 2006 16:14:26 +0000 |
parents | 067115a6e738 |
children | 1f33ca9aff72 e3bacb89536a |
comparison
equal
deleted
inserted
replaced
69566:1ea752831737 | 69567:be544ed33d82 |
---|---|
1 Building and Installing Emacs | 1 Building and Installing Emacs |
2 on Windows NT/2K/XP and Windows 95/98/ME | 2 on Windows NT/2K/XP and Windows 95/98/ME |
3 | 3 |
4 Copyright (C) 2001, 2002, 2003, 2004, 2005, | 4 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 |
5 2006 Free Software Foundation, Inc. | 5 Free Software Foundation, Inc. |
6 See the end of the file for copying permissions. | 6 See the end of the file for copying permissions. |
7 | |
8 * For the impatient | |
9 | |
10 Here are the concise instructions for configuring and building the | |
11 native Win32 binary of Emacs on Windows, for those who want to skip | |
12 the complex explanations and ``just do it'': | |
13 | |
14 1. Change to the `nt' directory (the directory of this file): | |
15 | |
16 cd nt | |
17 | |
18 2. Run configure.bat. From the COMMAND.COM/CMD.EXE command prompt: | |
19 | |
20 configure | |
21 | |
22 from a Unixy shell prompt: | |
23 | |
24 cmd /c configure.bat | |
25 or | |
26 command.com /c configure.bat | |
27 | |
28 3. Run the Make utility suitable for your environment. If you build | |
29 with the Microsoft's Visual C compiler: | |
30 | |
31 nmake | |
32 | |
33 For the development environments based on GNU GCC (MinGW, MSYS, | |
34 Cygwin), depending on how Make is called, it could be: | |
35 | |
36 make | |
37 or | |
38 gnumake | |
39 or | |
40 gmake | |
41 | |
42 (If you are building from CVS, say "make bootstrap" or "nmake | |
43 bootstrap" instead.) | |
44 | |
45 4. Generate the Info manuals (only if you are building out of CVS): | |
46 | |
47 make info | |
48 | |
49 (change "make" to "nmake" if you use MSVC). | |
50 | |
51 5. Install the produced binaries: | |
52 | |
53 make install | |
54 | |
55 That's it! | |
56 | |
57 If these short instructions somehow fail, read the rest of this | |
58 file. | |
59 | |
60 * Preliminaries | |
7 | 61 |
8 If you used WinZip to unpack the distribution, we suggest to | 62 If you used WinZip to unpack the distribution, we suggest to |
9 remove the files and unpack again with a different program! | 63 remove the files and unpack again with a different program! |
10 WinZip is known to create some subtle and hard to debug problems, | 64 WinZip is known to create some subtle and hard to debug problems, |
11 such as converting files to DOS CR-LF format, not creating empty | 65 such as converting files to DOS CR-LF format, not creating empty |
26 In addition to this file, you should also read INSTALL.CVS in the | 80 In addition to this file, you should also read INSTALL.CVS in the |
27 parent directory, and make sure that you have a version of | 81 parent directory, and make sure that you have a version of |
28 "touch.exe" in your path, and that it will create files that do not | 82 "touch.exe" in your path, and that it will create files that do not |
29 yet exist. | 83 yet exist. |
30 | 84 |
85 * Supported development environments | |
86 | |
31 To compile Emacs, you will need either Microsoft Visual C++ 2.0 or | 87 To compile Emacs, you will need either Microsoft Visual C++ 2.0 or |
32 later and nmake, or a Windows port of GCC 2.95 or later with MinGW | 88 later and nmake, or a Windows port of GCC 2.95 or later with MinGW |
33 and W32 API support and a port of GNU Make. You can use the Cygwin | 89 and W32 API support and a port of GNU Make. You can use the Cygwin |
34 ports of GCC, but Emacs requires the MinGW headers and libraries to | 90 ports of GCC, but Emacs requires the MinGW headers and libraries to |
35 build (latest versions of the Cygwin toolkit, at least since v1.3.3, | 91 build (latest versions of the Cygwin toolkit, at least since v1.3.3, |
36 include the MinGW headers and libraries as an integral part). | 92 include the MinGW headers and libraries as an integral part). |
93 | |
94 The rest of this file assumes you have a working development | |
95 environment. If you just installed such an environment, try | |
96 building a trivial C "Hello world" program, and see if it works. If | |
97 it doesn't work, resolve that problem first! | |
37 | 98 |
38 If you use the MinGW port of GCC and GNU Make to build Emacs, there | 99 If you use the MinGW port of GCC and GNU Make to build Emacs, there |
39 are some compatibility issues wrt Make and the shell that is run by | 100 are some compatibility issues wrt Make and the shell that is run by |
40 Make, either the standard COMMAND.COM/CMD.EXE supplied with Windows | 101 Make, either the standard COMMAND.COM/CMD.EXE supplied with Windows |
41 or sh.exe., a port of a Unixy shell. For reference, here is a list | 102 or sh.exe., a port of a Unixy shell. For reference, here is a list |
88 | 149 |
89 You will also need a copy of the Posix cp, rm and mv programs. These | 150 You will also need a copy of the Posix cp, rm and mv programs. These |
90 and other useful Posix utilities can be obtained from one of several | 151 and other useful Posix utilities can be obtained from one of several |
91 projects: | 152 projects: |
92 | 153 |
154 * http://gnuwin32.sourceforge.net/ ( GnuWin32 ) | |
93 * http://www.mingw.org/ ( MinGW ) | 155 * http://www.mingw.org/ ( MinGW ) |
94 * http://www.cygwin.com/ ( Cygwin ) | 156 * http://www.cygwin.com/ ( Cygwin ) |
95 * http://unxutils.sourceforge.net/ ( UnxUtils ) | 157 * http://unxutils.sourceforge.net/ ( UnxUtils ) |
96 * http://gnuwin32.sourceforge.net/ ( GnuWin32 ) | |
97 | 158 |
98 If you build Emacs on Windows 9X or ME, not on Windows 2K/XP or | 159 If you build Emacs on Windows 9X or ME, not on Windows 2K/XP or |
99 Windows NT, we suggest to install the Cygwin port of Bash. | 160 Windows NT, we suggest to install the Cygwin port of Bash. That is |
161 because the native Windows shell COMMAND.COM is too limited; the | |
162 Emacs build procedure tries very hard to support even such limited | |
163 shells, but as none of the Windows developers of Emacs work on | |
164 Windows 9x, we cannot guarantee that it works without a more | |
165 powerful shell. | |
100 | 166 |
101 Additional instructions and help for building Emacs on Windows can be | 167 Additional instructions and help for building Emacs on Windows can be |
102 found at the Emacs Wiki: | 168 found at the Emacs Wiki: |
103 | 169 |
104 http://www.emacswiki.org/cgi-bin/wiki/WThirtyTwoInstallationKit | 170 http://www.emacswiki.org/cgi-bin/wiki/WThirtyTwoInstallationKit |
105 | 171 |
106 and at this URL: | 172 and at this URL: |
107 | 173 |
108 http://ourcomments.org/Emacs/w32-build-emacs.html | 174 http://ourcomments.org/Emacs/w32-build-emacs.html |
109 | 175 |
110 * Configuring | 176 * Configuring |
111 | 177 |
112 Configuration of Emacs is now handled by running configure.bat in the | 178 Configuration of Emacs is now handled by running configure.bat in the |
113 nt subdirectory. It will detect which compiler you have available, | 179 `nt' subdirectory. It will detect which compiler you have available, |
114 and generate makefiles accordingly. You can override the compiler | 180 and generate makefiles accordingly. You can override the compiler |
115 detection, and control optimization and debug settings, by specifying | 181 detection, and control optimization and debug settings, by specifying |
116 options on the command line when invoking configure. | 182 options on the command line when invoking configure. |
117 | 183 |
118 To configure Emacs to build with GCC or MSVC, whichever is available, | 184 To configure Emacs to build with GCC or MSVC, whichever is available, |
119 simply change to the nt subdirectory and run `configure' with no | 185 simply change to the `nt' subdirectory and run `configure.bat' with no |
120 options. To see what options are available, run `configure --help'. | 186 options. To see what options are available, run `configure --help'. |
121 | 187 |
122 N.B. It is normal to see a few error messages output while configure | 188 N.B. It is normal to see a few error messages output while configure |
123 is running, when gcc support is being tested. These cannot be | 189 is running, when gcc support is being tested. These cannot be |
124 surpressed because of limitations in the Windows 9x command.com shell. | 190 surpressed because of limitations in the Windows 9x command.com shell. |
167 | 233 |
168 * Building | 234 * Building |
169 | 235 |
170 After running configure, simply run the appropriate `make' program for | 236 After running configure, simply run the appropriate `make' program for |
171 your compiler to build Emacs. For MSVC, this is nmake; for GCC, it is | 237 your compiler to build Emacs. For MSVC, this is nmake; for GCC, it is |
172 GNU make. | 238 GNU make. (If you are building out of CVS, say "make bootstrap" or |
239 "nmake bootstrap" instead.) | |
173 | 240 |
174 As the files are compiled, you will see some warning messages | 241 As the files are compiled, you will see some warning messages |
175 declaring that some functions don't return a value, or that some data | 242 declaring that some functions don't return a value, or that some data |
176 conversions will be lossy, etc. You can safely ignore these messages. | 243 conversions will be lossy, etc. You can safely ignore these messages. |
177 The warnings may be fixed in the main FSF source at some point, but | 244 The warnings may be fixed in the main FSF source at some point, but |
178 until then we will just live with them. | 245 until then we will just live with them. |
246 | |
247 If you are building from CVS, the following commands will produce | |
248 the Info manuals (which are not part of the CVS repository): | |
249 | |
250 make info | |
251 or | |
252 nmake info | |
179 | 253 |
180 * Installing | 254 * Installing |
181 | 255 |
182 To install Emacs after it has compiled, simply run `nmake install' | 256 To install Emacs after it has compiled, simply run `nmake install' |
183 or `make install', depending on which version of the Make utility | 257 or `make install', depending on which version of the Make utility |