1b0c93908890d9580e892d0d7f4a1709655652a1
[bpt/emacs.git] / admin / nt / README-ftp-server
1 Copyright (C) 2001-2012 Free Software Foundation, Inc.
2 See the end of the file for license conditions.
3
4 Precompiled Distributions of
5 Emacs for Windows
6
7 Version 24.1
8
9 January 1, 2011
10
11 This directory contains precompiled distributions for GNU Emacs on
12 Windows (versions before Windows 95 and NT4 are not supported).
13 This port is a part of the standard GNU Emacs distribution from the
14 Free Software Foundation; the precompiled distributions are provided
15 here for convenience since the majority of Windows users are not
16 accustomed to compiling programs themselves. Corresponding source
17 can be found in the parent directory in emacs-24.1.tar.gz.
18
19 If you have access to the World Wide Web, I would recommend pointing
20 your favorite web browser to the following document (if you haven't
21 already):
22
23 http://www.gnu.org/software/emacs/windows/ntemacs.html
24
25 * IMPORTANT LEGAL REMINDER
26
27 If you want to redistribute any of the precompiled distributions of
28 Emacs, be careful to check the implications of the GPL. For instance,
29 if you put the emacs-24.1-bin-i386.tar.gz file from this directory on
30 an Internet site, you must arrange to distribute the source files of
31 the SAME version (i.e. ../emacs-24.1.tar.gz).
32
33 Making a link to our copy of the source is NOT sufficient, since we
34 might upgrade to a new version while you are still distributing the
35 old binaries.
36
37
38 * Files in this directory
39
40 + emacs-24.1-bin-i386.zip
41 Windows binaries of Emacs-24.1, with all lisp code and documentation
42 included.
43
44 Download this file if you want a single installation package, and
45 are not interested in the C source code for Emacs. After
46 unpacking, you can optionally run the file bin/addpm.exe to have
47 Emacs add icons to the Start Menu.
48
49 If you need the C source code at a later date, it will be safe to
50 unpack the source distribution on top of this installation.
51
52 + emacs-24.1-barebin-i386.zip
53 Windows binaries of Emacs-24.1, without lisp code or documentation.
54
55 Download this file if you already have the source distribution.
56
57 Unpack this over the top of the source distribution. It contains the
58 bin subdirectory and etc/DOC file.
59
60 + libxpm-3.5.7-w32-src.zip
61 Source code required to compile libXpm-3.5.7 on Windows. Contains
62 a basic Makefile for compiling with mingw32 and a .def file for
63 generating a DLL with the appropriate exports in addition to the
64 source code to provide the subset of functionality Emacs uses from
65 libXpm. This corresponds to the libXpm.dll in emacs-24.1-bin-i386.zip
66 and emacs-24.1-barebin-i386.zip.
67
68 * Prerequisites for running Emacs on Windows 9X
69
70 Using Emacs in GUI mode on Windows 95/98/Me requires the UNICOWS.DLL
71 dynamic library, which provides MSLU, the Microsoft Unicode Layer
72 for Windows 9X. You can freely download it from the Microsoft site.
73
74 * Image support
75
76 Emacs 24.1 contains support for images, however for most image
77 formats supporting libraries are required. This distribution has
78 been tested with the libraries that are distributed with GTK for
79 Windows (http://www.gtk.org/download/win32.php), and the libraries
80 found at http://gnuwin32.sourceforge.net/. The following image
81 formats are supported:
82
83 PBM/PGM/PPM: Supported natively by Emacs. This format is used for
84 the black and white versions of the toolbar icons.
85
86 XPM: a Windows port of the XPM library corresponding to the x.org
87 release of X11R7.3 is included with the binary distribution, but
88 can be replaced by other versions with the name xpm4.dll,
89 libxpm-nox4.dll or libxpm.dll.
90
91 PNG: requires the PNG reference library 1.4 or later, which will
92 be named libpng14.dll or libpng14-14.dll. LibPNG requires zlib,
93 which should come from the same source as you got libpng.
94 Starting with Emacs 23.3, the precompiled Emacs binaries are
95 built with libpng 1.4.x and later, and are incompatible with
96 earlier versions of libpng DLLs. So if you have libpng 1.2.x,
97 the PNG support will not work, and you will have to download
98 newer versions.
99
100 JPEG: requires the Independent JPEG Group's libjpeg 6b or later,
101 which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll.
102
103 TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll
104 or libtiff.dll.
105
106 GIF: requires libungif or giflib 4.1 or later, which will be
107 called giflib4.dll, libungif4.dll or libungif.dll.
108
109 SVG: not compiled into the binary release, but available if you
110 compile Emacs yourself if you have development packages for all the
111 dependencies. Requires many libraries from GTK and Gnome
112 as well as the base librsvg library. Known to crash Emacs on many
113 sample images.
114
115 * Distributions in .tar.gz and .zip format
116
117 Emacs is distributed primarily as source code in a large gzipped tar
118 file (*.tar.gz). Because Emacs is quite large and therefore
119 difficult to download over unreliable connections, the Windows
120 binaries are provided in two combinations. The complete lisp source
121 plus executables (bin), and executables only (barebin) for unpacking
122 over the top of the source distribution. Formerly, we used the same
123 .tar.gz format but since there are no longer legal problems with
124 .zip files, and the latest versions of Windows support these
125 natively, the Windows binaries of Emacs are now distributed as .zip
126 files.
127
128 * Distributions for non-x86 platforms
129
130 Distributions for non-x86 platforms are no longer supplied. Older
131 platforms supported by Windows NT no longer seem to be in demand,
132 and Emacs is yet to be ported to 64 bit Windows platforms. If you
133 are willing to help port Emacs 24 to 64 bit versions of Windows,
134 your contribution will be welcome on the emacs-devel mailing list.
135
136 * Unpacking distributions
137
138 Ports of GNU gzip and GNU tar for handling the source distribution file
139 format can be found in several places that distribute ports of GNU
140 programs, for example:
141
142 Cygwin: http://www.cygwin.com/
143 GnuWin32: http://gnuwin32.sourceforge.net/
144
145 Many other popular file compression utilities for Windows are also
146 able to handle gzipped tar files. 7zip is one free Windows graphical
147 program that is able to handle many archive formats.
148
149 Open a command prompt (MSDOS) window. Decide on a directory in which
150 to place Emacs. Move the distribution to that directory, and then
151 unpack it as follows.
152
153 If you have the gzipped tar version, use gunzip to uncompress the tar
154 file on the fly, and pipe the output through tar with the "xvf" flags
155 to extract the files from the tar file:
156
157 % gunzip -c some.tar.gz | tar xvf -
158
159 You may see messages from tar about not being able to change the
160 modification time on directories, and from gunzip complaining about a
161 broken pipe. These messages are harmless and you can ignore them. On
162 Windows NT, unpacking tarballs this way leaves them in compressed
163 form, taking up less space on disk. Unfortunately, on Windows 95 and
164 98, a large temporary file is created, so it is better to use the
165 djtarnt.exe program, which performs the equivalent operation in one
166 step:
167
168 % djtarnt -x some.tar.gz
169
170 You may be prompted to rename or overwrite directories when using
171 djtarnt: simply type return to continue (this is harmless).
172
173 Zip files can be unpacked using unzip.exe from info-zip.org
174 if you do not already have other tools to do this.
175
176 % unzip some.zip
177
178 The precompiled binaries can be unpacked using unzip.exe from info-zip.org
179 if you do not already have other tools to do this.
180
181 % unzip some.zip
182
183 Once you have unpacked a precompiled distribution of Emacs, it should
184 have the following subdirectories:
185
186 bin etc info lisp site-lisp
187
188
189 * Unpacking with other tools
190
191 If you do use other utility programs to unpack the distribution, check
192 the following to be sure the distribution was not corrupted:
193
194 + Be sure to disable the CR/LF translation or the executables will
195 be unusable. Older versions of WinZip would enable this
196 translation by default when unpacking .tar files. If you are
197 using WinZip, disable it. (I don't have WinZip myself, and I do
198 not know the specific commands necessary to disable it.)
199
200 + Check that filenames were not truncated to 8.3. For example, there
201 should be a file lisp/abbrevlist.el; if this has been truncated to
202 abbrevli.el, your distribution has been corrupted while unpacking
203 and Emacs will not start.
204
205 + Check that filenames were not changed by your web-browser. Some
206 proprietary web-browsers save .tar.gz files as .tar.tar. You might
207 like to consider switching to a Free modern browser if your browser
208 has this bug.
209
210 + I've also had reports that some older "gnuwin32" port of tar
211 corrupts the executables. Use the latest version from the gnuwin32
212 site or another port of tar instead.
213
214 If you believe you have unpacked the distributions correctly and are
215 still encountering problems, see the section on Further Information
216 below.
217
218
219 * Compiling from source
220
221 If you would like to compile Emacs from source, download the source
222 distribution, unpack it in the same manner as a precompiled
223 distribution, and look in the file nt/INSTALL for detailed
224 directions. It is recommended to use GCC 2.95 or later with MinGW
225 support to compile the source. The port of GCC included in Cygwin
226 is supported, but check the nt/INSTALL file if you have trouble
227 since some builds of GNU make aren't supported.
228
229
230 * Further information
231
232 If you have access to the World Wide Web, I would recommend pointing
233 your favorite web browser to following the document (if you haven't
234 already):
235
236 http://www.gnu.org/software/emacs/windows/ntemacs.html
237
238 This document serves as an FAQ and a source for further information
239 about the Windows port and related software packages. Note that as
240 most of the information in that FAQ is for earlier versions, so some
241 information may not be relevant to Emacs-24.1.
242
243 In addition to the FAQ, there is a mailing list for discussing issues
244 related to the Windows port of Emacs. For information about the
245 list, see this Web page:
246
247 http://lists.gnu.org/mailman/listinfo/help-emacs-windows
248
249 To ask questions on the mailing list, send email to
250 help-emacs-windows@gnu.org. (You don't need to subscribe for that.)
251 To subscribe to the list or unsubscribe from it, fill the form you
252 find at http://mail.gnu.org/mailman/listinfo/help-emacs-windows as
253 explained there.
254
255 Another valuable source of information and help which should not be
256 overlooked is the various Usenet news groups dedicated to Emacs.
257 These are particularly good for help with general issues which aren't
258 specific to the Windows port of Emacs. The main news groups to use
259 for seeking help are:
260
261 gnu.emacs.help
262 comp.emacs
263
264 There are also fairly regular postings and announcements of new or
265 updated Emacs packages on this group:
266
267 gnu.emacs.sources
268
269 Enjoy!
270
271 Jason Rumney
272 (jasonr@gnu.org)
273
274 Most of this README was contributed by former maintainer Andrew Innes
275 (andrewi@gnu.org)
276
277 \f
278 This file is part of GNU Emacs.
279
280 GNU Emacs is free software: you can redistribute it and/or modify
281 it under the terms of the GNU General Public License as published by
282 the Free Software Foundation, either version 3 of the License, or
283 (at your option) any later version.
284
285 GNU Emacs is distributed in the hope that it will be useful,
286 but WITHOUT ANY WARRANTY; without even the implied warranty of
287 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
288 GNU General Public License for more details.
289
290 You should have received a copy of the GNU General Public License
291 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.