Commit | Line | Data |
---|---|---|
acaf905b | 1 | Copyright (C) 2001-2012 Free Software Foundation, Inc. |
892df15e JR |
2 | See the end of the file for license conditions. |
3 | ||
7ee43737 | 4 | Emacs for Windows |
31098a38 | 5 | |
3e44c782 CS |
6 | This README.W32 file describes how to set up and run a precompiled |
7 | distribution of GNU Emacs for Windows. You can find the precompiled | |
8 | distribution on the ftp.gnu.org server and its mirrors: | |
31098a38 | 9 | |
3e44c782 | 10 | ftp://ftp.gnu.org/gnu/emacs/windows/ |
31098a38 AI |
11 | |
12 | This server contains other distributions, including the full Emacs | |
3deb93c6 JR |
13 | source distribution and a barebin distribution which can be installed |
14 | over it, as well as older releases of Emacs for Windows. | |
31098a38 | 15 | |
3e44c782 CS |
16 | Information on how to compile Emacs from sources on Windows is in |
17 | the files README and INSTALL in this directory. If you received | |
18 | this file as part of the Emacs source distribution, please read | |
19 | those 2 files and not this one. | |
20 | ||
31098a38 AI |
21 | Answers to frequently asked questions, and further information about |
22 | this port of GNU Emacs and related software packages can be found via | |
6e3645dc | 23 | http: |
31098a38 | 24 | |
3deb93c6 | 25 | http://www.gnu.org/software/emacs/windows/ |
31098a38 AI |
26 | |
27 | * Preliminaries | |
28 | ||
49c956eb EZ |
29 | Along with this file should be six subdirectories (bin, etc, info, |
30 | lisp, leim, site-lisp). If you have downloaded the barebin | |
31 | distribution, then it will contain only the bin directory and the | |
32 | built in documentation in etc/DOC-X, the rest of the subdirectories | |
33 | are in the src distribution, which the barebin distribution is | |
34 | designed to be used with. | |
31098a38 AI |
35 | |
36 | * Setting up Emacs | |
37 | ||
3deb93c6 JR |
38 | To install Emacs, simply unpack all the files into a directory of |
39 | your choice, but note that you might encounter minor problems if | |
40 | there is a space anywhere in the directory name. To complete the | |
41 | installation process, you can optionally run the program addpm.exe | |
42 | in the bin subdirectory. This will put an icon for Emacs in the | |
43 | Start Menu under "Start -> Programs -> Gnu Emacs". | |
31098a38 AI |
44 | |
45 | Some users have reported that the Start Menu item is not created for | |
46 | them. If this happens, just create your own shortcut to runemacs.exe, | |
47 | eg. by dragging it on to the desktop or the Start button. | |
48 | ||
49 | Note that running addpm is now an optional step; Emacs is able to | |
3deb93c6 JR |
50 | locate all of its files without needing any information to be set in |
51 | the environment or the registry, although such settings will still | |
52 | be obeyed if present. This is convenient for running Emacs on a | |
53 | machine which disallows registry changes, or on which software | |
54 | should not be installed. For instance, you can now run Emacs | |
55 | directly from a CD or USB flash drive without copying or installing | |
56 | anything on the machine itself. | |
31098a38 | 57 | |
8cedc5ac EZ |
58 | * Prerequisites for Windows 9X |
59 | ||
60 | To run Emacs on Windows 9X (Windows 95/98/Me), you will need to have | |
61 | the Microsoft Layer for Unicode (MSLU) installed. It can be | |
62 | downloaded from the Microsoft site, and comes in a form of a single | |
63 | dynamic library called UNICOWS.DLL. If this library is not | |
64 | accessible to Emacs, it will pop up a dialog saying that it cannot | |
65 | find the library, and will refuse to start up a GUI session. | |
66 | (However, it is still possible to use Emacs in text mode, even | |
67 | without UNICOWS.DLL, by invoking it as "emacs -nw", see below.) | |
68 | ||
31098a38 AI |
69 | * Starting Emacs |
70 | ||
71 | To run Emacs, simply select Emacs from the Start Menu, or invoke | |
3deb93c6 JR |
72 | runemacs.exe directly from Explorer or from a command prompt. This |
73 | will start Emacs in its default GUI mode, ready to use. If you have | |
74 | never used Emacs before, you should follow the tutorial at this | |
75 | point (select Emacs Tutorial from the Help menu), since Emacs is | |
76 | quite different from ordinary Windows applications in many respects. | |
31098a38 AI |
77 | |
78 | If you want to use Emacs in tty or character mode within a command | |
79 | window, you can start it by typing "emacs -nw" at the command prompt. | |
80 | (Obviously, you need to ensure that the Emacs bin subdirectory is in | |
81 | your PATH first, or specify the path to emacs.exe.) The -nw | |
82 | (non-windowed) mode of operation is most useful if you have a telnet | |
83 | server on your machine, allowing you to run Emacs remotely. | |
84 | ||
ece646ab JR |
85 | * EXE files included |
86 | ||
87 | Emacs comes with the following executable files in the bin directory. | |
88 | ||
d9cce206 | 89 | + emacs.exe - The main Emacs executable. As this is designed to run |
ece646ab JR |
90 | as both a text-mode application (emacs -nw) and as a GUI application, |
91 | it will pop up a command prompt window if run directly from Explorer. | |
92 | ||
93 | + runemacs.exe - A wrapper for running Emacs as a GUI application | |
8cedc5ac EZ |
94 | without popping up a command prompt window. If you create a |
95 | desktop shortcut for invoking Emacs, make it point to this | |
96 | executable, not to emacs.exe. | |
ece646ab JR |
97 | |
98 | + emacsclient.exe - A command-line client program that can | |
d9cce206 | 99 | communicate with a running Emacs process. See the `Emacs Server' |
1c3f291e | 100 | node of the Emacs manual. |
ece646ab JR |
101 | |
102 | + emacsclientw.exe - A version of emacsclient that does not open | |
103 | a command-line window. | |
104 | ||
105 | + addpm.exe - A basic installer that creates Start Menu icons for Emacs. | |
106 | Running this is optional. | |
107 | ||
108 | + cmdproxy.exe - Used internally by Emacs to work around problems with | |
109 | the native shells in various versions of Windows. | |
110 | ||
111 | + ctags.exe, etags.exe - Tools for generating tag files. See the | |
d9cce206 | 112 | `Tags' node of the Emacs manual. |
ece646ab JR |
113 | |
114 | + ebrowse.exe - A tool for generating C++ browse information. See the | |
115 | `Ebrowse' manual. | |
116 | ||
117 | + ddeclient.exe - A tool for interacting with DDE servers. | |
118 | ||
8cedc5ac | 119 | + hexl.exe - A tool for producing hex dumps of binary files. See the |
ece646ab JR |
120 | `Editing Binary Files' node of the Emacs manual. |
121 | ||
122 | + movemail.exe - A helper application for safely moving mail from | |
123 | a mail spool or POP server to a local user mailbox. See the | |
124 | `Movemail' node of the Emacs manual. | |
125 | ||
9ccbb53d JR |
126 | * Image support |
127 | ||
128 | Emacs has built in support for XBM and PPM/PGM/PBM images, and the | |
129 | libXpm library is bundled, providing XPM support (required for color | |
d9cce206 | 130 | toolbar icons and splash screen). Source for libXpm should be available |
42a275e0 | 131 | on the same place as you got this binary distribution from. |
9ccbb53d JR |
132 | |
133 | Emacs can also support some other image formats with appropriate | |
5be1c984 | 134 | libraries. These libraries are all available as part of GTK |
b018182c | 135 | download for Windows (http://www.gtk.org/download/win32.php), or |
5be1c984 EZ |
136 | from the GnuWin32 project. Emacs will find them if the directory |
137 | they are installed in is on the PATH. | |
138 | ||
139 | PNG: requires the PNG reference library 1.4 or later, which will | |
140 | be named libpng14.dll or libpng14-14.dll. LibPNG requires zlib, | |
141 | which should come from the same source as you got libpng. | |
142 | Starting with Emacs 23.3, the precompiled Emacs binaries are | |
143 | built with libpng 1.4.x and later, and are incompatible with | |
144 | earlier versions of libpng DLLs. So if you have libpng 1.2.x, | |
145 | the PNG support will not work, and you will have to download | |
146 | newer versions. | |
9ccbb53d | 147 | |
40a8bdf6 | 148 | JPEG: requires the Independent JPEG Group's libjpeg 6b or later, |
9ccbb53d JR |
149 | which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll. |
150 | ||
151 | TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll | |
152 | or libtiff.dll. | |
153 | ||
154 | GIF: requires libungif or giflib 4.1 or later, which will be | |
155 | called giflib4.dll, libungif4.dll or libungif.dll. | |
156 | ||
5be1c984 | 157 | If you have image support DLLs under different names, customize the |
3d4cad2c | 158 | value of `dynamic-library-alist'. |
5be1c984 | 159 | |
d9cce206 | 160 | In addition, Emacs can be compiled to support SVG. This precompiled |
3deb93c6 JR |
161 | distribution has not been compiled that way, since the SVG library |
162 | or one or more of its extensive dependencies appear to be | |
d9cce206 | 163 | unreliable under Windows. See nt/INSTALL in the src distribution if |
3deb93c6 | 164 | you wish to compile Emacs with SVG support. |
9ccbb53d | 165 | |
8a70d4b1 EZ |
166 | * GnuTLS support |
167 | ||
168 | In order to support GnuTLS at runtime, Emacs must be able to find | |
169 | the relevant DLLs during startup; failure to do so is not an error, | |
170 | but GnuTLS won't be available to the running session. | |
171 | ||
172 | You can get pre-built binaries (including any required DLL and the | |
8dc96b40 | 173 | header files) at http://sourceforge.net/projects/ezwinports/files/. |
8a70d4b1 | 174 | |
9078ead6 EZ |
175 | * libxml2 support |
176 | ||
177 | In order to support libxml2 at runtime, a libxml2-enabled Emacs must | |
178 | be able to find the relevant DLLs during startup; failure to do so | |
179 | is not an error, but libxml2 features won't be available to the | |
180 | running session. | |
181 | ||
182 | You can get pre-built binaries (including any required DLL and the | |
183 | header files) at http://sourceforge.net/projects/ezwinports/files/. | |
184 | ||
31098a38 AI |
185 | * Uninstalling Emacs |
186 | ||
3deb93c6 JR |
187 | If you should need to uninstall Emacs, simply delete all the files |
188 | and subdirectories from the directory where it was unpacked (Emacs | |
189 | does not install or update any files in system directories or | |
190 | anywhere else). If you ran the addpm.exe program to create the | |
191 | registry entries and the Start menu icon, then you can remove the | |
192 | registry entries using regedit. All of the settings are written | |
193 | under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you | |
194 | didn't have administrator privileges when you installed, the same | |
195 | key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs | |
196 | key. | |
31098a38 AI |
197 | |
198 | The Start menu entry can be removed by right-clicking on the Task bar | |
199 | and selecting Properties, then using the Remove option on the Start | |
200 | Menu Programs page. (If you installed under an account with | |
201 | administrator privileges, then you need to click the Advanced button | |
202 | and look for the Gnu Emacs menu item under All Users.) | |
203 | ||
204 | * Troubleshooting | |
205 | ||
206 | Unpacking the distributions | |
207 | ||
208 | If you encounter trouble trying to run Emacs, there are a number of | |
3deb93c6 JR |
209 | possible causes. Check the following for indications that the |
210 | distribution was not corrupted by the tools used to unpack it: | |
31098a38 | 211 | |
3deb93c6 | 212 | * Be sure to disable CR/LF translation or the executables will |
31098a38 AI |
213 | be unusable. Older versions of WinZipNT would enable this |
214 | translation by default. If you are using WinZipNT, disable it. | |
215 | (I don't have WinZipNT myself, and I do not know the specific | |
216 | commands necessary to disable it.) | |
217 | ||
218 | * Check that filenames were not truncated to 8.3. For example, | |
219 | there should be a file lisp\abbrevlist.elc; if this has been | |
220 | truncated to abbrevli.elc, your distribution has been corrupted | |
221 | while unpacking and Emacs will not start. | |
222 | ||
8cedc5ac EZ |
223 | * On Windows 9X, make sure you have the UNICOWS.DLL library either |
224 | in the same directory where you have emacs.exe or in the | |
225 | directory where system-wide DLLs are kept. | |
226 | ||
31098a38 AI |
227 | If you believe you have unpacked the distributions correctly and are |
228 | still encountering problems, see the section on Further Information | |
229 | below. | |
230 | ||
231 | Virus scanners | |
232 | ||
233 | Some virus scanners interfere with Emacs' use of subprocesses. If you | |
234 | are unable to use subprocesses and you use Dr. Solomon's WinGuard or | |
235 | McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector | |
236 | scanning" (McAfee exclusion properties). | |
237 | ||
238 | * Further information | |
239 | ||
240 | If you have access to the World Wide Web, I would recommend pointing | |
d9cce206 | 241 | your favorite web browser to the following document (if you haven't |
31098a38 AI |
242 | already): |
243 | ||
3deb93c6 | 244 | http://www.gnu.org/software/emacs/windows/ |
31098a38 AI |
245 | |
246 | This document serves as an FAQ and a source for further information | |
247 | about the Windows port and related software packages. | |
248 | ||
249 | In addition to the FAQ, there is a mailing list for discussing issues | |
72d40630 EZ |
250 | related to the Windows port of Emacs. For information about the |
251 | list, see this Web page: | |
252 | ||
6e3645dc | 253 | http://lists.gnu.org/mailman/listinfo/help-emacs-windows |
72d40630 EZ |
254 | |
255 | To ask questions on the mailing list, send email to | |
256 | help-emacs-windows@gnu.org. (You don't need to subscribe for that.) | |
257 | To subscribe to the list or unsubscribe from it, fill the form you | |
6e3645dc | 258 | find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as |
72d40630 | 259 | explained there. |
31098a38 AI |
260 | |
261 | Another valuable source of information and help which should not be | |
262 | overlooked is the various Usenet news groups dedicated to Emacs. | |
d9cce206 | 263 | These are particularly good for help with general issues which aren't |
31098a38 AI |
264 | specific to the Windows port of Emacs. The main news groups to use |
265 | for seeking help are: | |
266 | ||
267 | gnu.emacs.help | |
268 | comp.emacs | |
269 | ||
270 | There are also fairly regular postings and announcements of new or | |
271 | updated Emacs packages on this group: | |
272 | ||
273 | gnu.emacs.sources | |
274 | ||
275 | * Reporting bugs | |
276 | ||
277 | If you encounter a bug in this port of Emacs, we would like to hear | |
278 | about it. First check the FAQ on the web page above to see if the bug | |
279 | is already known and if there are any workarounds. Then check whether | |
280 | the bug has something to do with code in your .emacs file, e.g. by | |
3deb93c6 JR |
281 | invoking Emacs with the "-Q" option. |
282 | ||
283 | If you decide that it is a bug in Emacs, use the built in bug | |
284 | reporting facility to report it (from the menu; Help -> Send Bug Report). | |
285 | If you have not yet configured Emacs for mail, then when you press | |
286 | C-c C-c to send the report, it will ask you to paste the text of the | |
d9cce206 JB |
287 | report into your mail client. If the bug is related to subprocesses, |
288 | also specify which shell you are using (e.g., include the values of | |
289 | `shell-file-name' and `explicit-shell-file-name' in your message). | |
31098a38 | 290 | |
678c6e62 | 291 | Enjoy! |
892df15e JR |
292 | |
293 | \f | |
294 | This file is part of GNU Emacs. | |
295 | ||
9ad5de0c | 296 | GNU Emacs is free software: you can redistribute it and/or modify |
892df15e | 297 | it under the terms of the GNU General Public License as published by |
9ad5de0c GM |
298 | the Free Software Foundation, either version 3 of the License, or |
299 | (at your option) any later version. | |
892df15e JR |
300 | |
301 | GNU Emacs is distributed in the hope that it will be useful, | |
302 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
303 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
304 | GNU General Public License for more details. | |
305 | ||
306 | You should have received a copy of the GNU General Public License | |
9ad5de0c | 307 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |