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