Merge from emacs-24; up to 2014-06-02T11:35:40Z!michael.albinus@gmx.de
[bpt/emacs.git] / nt / README.W32
index df869d6..c4e4cf3 100644 (file)
@@ -1,42 +1,36 @@
-Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-  2010  Free Software Foundation, Inc.
+Copyright (C) 2001-2014 Free Software Foundation, Inc.
 See the end of the file for license conditions.
 
                           Emacs for Windows
 
-  This README file describes how to set up and run a precompiled
-  version of GNU Emacs for Windows.  This distribution can be found on
-  the ftp.gnu.org server and its mirrors:
+  This README.W32 file describes how to set up and run a precompiled
+  distribution of GNU Emacs for Windows.  You can find the precompiled
+  distribution on the ftp.gnu.org server and its mirrors:
 
-       ftp://ftp.gnu.org/gnu/emacs/windows/
+       ftp://ftp.gnu.org/gnu/emacs/windows/
 
   This server contains other distributions, including the full Emacs
-  source distribution and a barebin distribution which can be installed
-  over it, as well as older releases of Emacs for Windows.
+  source distribution, as well as older releases of Emacs for Windows.
 
-  Answers to frequently asked questions, and further information about
-  this port of GNU Emacs and related software packages can be found via
-  http:
-
-       http://www.gnu.org/software/emacs/windows/
+  Information on how to compile Emacs from sources on Windows is in
+  the files README and INSTALL in the nt/ sub-directory of the
+  top-level Emacs directory in the source distribution.  If you
+  received this file as part of the Emacs source distribution, and are
+  looking for information on how to build Emacs on MS-Windows, please
+  read those 2 files and not this one.
 
 * Preliminaries
 
-  Along with this file should be six subdirectories (bin, etc, info,
-  lisp, leim, site-lisp).  If you have downloaded the barebin
-  distribution, then it will contain only the bin directory and the
-  built in documentation in etc/DOC-X, the rest of the subdirectories
-  are in the src distribution, which the barebin distribution is
-  designed to be used with.
+  Along with this file should be four subdirectories (bin, libexec,
+  share, and var).
 
 * Setting up Emacs
 
   To install Emacs, simply unpack all the files into a directory of
-  your choice, but note that you might encounter minor problems if
-  there is a space anywhere in the directory name.  To complete the
-  installation process, you can optionally run the program addpm.exe
-  in the bin subdirectory.  This will put an icon for Emacs in the
-  Start Menu under "Start -> Programs -> Gnu Emacs".
+  your choice.  To complete the installation process, you can
+  optionally run the program addpm.exe in the bin subdirectory.  This
+  will put an icon for Emacs in the Start Menu under
+  "Start -> Programs -> Gnu Emacs".
 
   Some users have reported that the Start Menu item is not created for
   them.  If this happens, just create your own shortcut to runemacs.exe,
@@ -51,6 +45,15 @@ See the end of the file for license conditions.
   directly from a CD or USB flash drive without copying or installing
   anything on the machine itself.
 
+* Prerequisites for Windows 9X
+
+  To run Emacs on Windows 9X (Windows 95/98/Me), you will need to have
+  the Microsoft Layer for Unicode (MSLU) installed.  It can be
+  downloaded from the Microsoft site, and comes in a form of a single
+  dynamic library called UNICOWS.DLL.  If this library is not
+  accessible to Emacs, it will pop up a dialog saying that it cannot
+  find the library, and will refuse to start up.
+
 * Starting Emacs
 
   To run Emacs, simply select Emacs from the Start Menu, or invoke
@@ -76,7 +79,9 @@ See the end of the file for license conditions.
     it will pop up a command prompt window if run directly from Explorer.
 
   + runemacs.exe - A wrapper for running Emacs as a GUI application
-    without popping up a command prompt window.
+    without popping up a command prompt window.  If you create a
+    desktop shortcut for invoking Emacs, make it point to this
+    executable, not to emacs.exe.
 
   + emacsclient.exe - A command-line client program that can
     communicate with a running Emacs process.  See the `Emacs Server'
@@ -88,57 +93,119 @@ See the end of the file for license conditions.
   + addpm.exe - A basic installer that creates Start Menu icons for Emacs.
     Running this is optional.
 
-  + cmdproxy.exe - Used internally by Emacs to work around problems with
-    the native shells in various versions of Windows.
-
   + ctags.exe, etags.exe - Tools for generating tag files.  See the
     `Tags' node of the Emacs manual.
 
   + ebrowse.exe - A tool for generating C++ browse information.  See the
     `Ebrowse' manual.
 
-  + ddeclient.exe - A tool for interacting with DDE servers.
+  Several helper programs are in a version-specific subdirectory of
+  the libexec directory:
 
-  + hexl.exe - A tool for converting files to hex dumps.  See the
+  + cmdproxy.exe - Used internally by Emacs to work around problems with
+    the native shells in various versions of Windows.
+
+  + ddeclient.exe - A tool for interacting with DDE servers.  To be
+    invoked as "ddeclient SERVER [TOPIC]", where SERVER is the DDE
+    server name, and sends each line of its standard input to the DDE
+    server using the DdeClientTransaction API.  This program is
+    supposed to be invoked via the 'call-process-region' Emacs
+    primitive.
+
+  + hexl.exe - A tool for producing hex dumps of binary files.  See the
     `Editing Binary Files' node of the Emacs manual.
 
   + movemail.exe - A helper application for safely moving mail from
     a mail spool or POP server to a local user mailbox.  See the
     `Movemail' node of the Emacs manual.
 
+  + profile.exe - A helper program that generates periodic events for
+    profiling Emacs Lisp code.
+
+  + update-game-score.exe - A utility for updating the score files of
+    Emacs games.
+
 * Image support
 
   Emacs has built in support for XBM and PPM/PGM/PBM images, and the
   libXpm library is bundled, providing XPM support (required for color
   toolbar icons and splash screen).  Source for libXpm should be available
-  on the same place as you got this binary distribution from.  The version
-  of libXpm bundled with this version of Emacs is 3.5.7, based on x.org's
-  libXpm library from X11R7.3.
+  from the same place from which you got this binary distribution.
 
   Emacs can also support some other image formats with appropriate
-  libraries.  These libraries are all available as part of GTK, or from
-  gnuwin32.sourceforge.net.  Emacs will find them if the directory they
-  are installed in is on the PATH.
-
-      PNG: requires the PNG reference library 1.2 or later, which will
-      be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll
-      or libpng.dll.  LibPNG requires zlib, which should come from the same
-      source as you got libpng.
-
-      JPEG: requires the Independant JPEG Group's libjpeg 6b or later,
+  libraries.  These libraries are all available on the following sites:
+
+  1. http://sourceforge.net/projects/ezwinports/files/
+     -- leaner, more up-to-date builds, only for 32-bit Emacs
+  2. http://www.gtk.org/download/win32.php
+     http://www.gtk.org/download/win64.php
+     -- the GTK project site; offers much fatter builds, but includes
+        64-bit DLLs (from the 2nd URL)
+  3. GnuWin32 project -- very old builds, not recommended
+
+  The libraries to download are mentioned below.  Some libraries
+  depend on others that need to be downloaded separately from the same
+  site; please consult the download instructions on each site for the
+  details.  In general, the ezwinports site mentioned above has all
+  the dependencies bundled in the same zip archive, so installing from
+  there is the easiest.
+
+  Emacs will find these libraries if the directory they are installed
+  in is on the PATH or in the same directory where you have emacs.exe.
+  Here are some specific comments about each image type:
+
+      PNG: requires the PNG reference library 1.4 or later, which will
+      be named libpngNN.dll or libpngNN-NN.dll.  LibPNG requires zlib,
+      which should come from the same source as you got libpng.
+      Starting with Emacs 23.3, the precompiled Emacs binaries are
+      built with libpng 1.4.x and later, and are incompatible with
+      earlier versions of libpng DLLs.  So if you have libpng 1.2.x,
+      the PNG support will not work, and you will have to download
+      newer versions.
+
+      JPEG: requires the Independent JPEG Group's libjpeg 6b or later,
       which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll.
 
-      TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll
-      or libtiff.dll.
+      TIFF: requires libTIFF 3.0 or later, which will be called libtiffN.dll
+      or libtiff-N.dll or libtiff.dll.
 
       GIF: requires libungif or giflib 4.1 or later, which will be
-      called giflib4.dll, libungif4.dll or libungif.dll.
+      called libgif-6.dll, giflib4.dll, libungif4.dll or libungif.dll.
+
+      SVG: requires librsvg 2.x whose DLL will be called
+      librsvg-2-2.dll.  SVG also requires several dependency DLLs,
+      such as Pango, Cairo, and Glib, all of them found on the
+      above-mentioned sites.  If you download from the ezwinports
+      site, you need only librsvg-2.nn.mm-x-w32-bin.zip, it comes with
+      all the other dependencies bundled.
+
+   If you have image support DLLs under different names, customize the
+   value of `dynamic-library-alist'.
+
+* GnuTLS support
+
+  GnuTLS provides SSL/TLS network support for Emacs (https, imaps and
+  so on.)
+
+  In order to support GnuTLS at runtime, Emacs must be able to find
+  the relevant DLLs during startup; failure to do so is not an error,
+  but GnuTLS won't be available to the running session.
 
-   In addition, Emacs can be compiled to support SVG.  This precompiled
-   distribution has not been compiled that way, since the SVG library
-   or one or more of its extensive dependencies appear to be
-   unreliable under Windows.  See nt/INSTALL in the src distribution if
-   you wish to compile Emacs with SVG support.
+  You can get pre-built binaries (including any dependency DLLs) at
+  http://sourceforge.net/projects/ezwinports/files/.
+
+* libxml2 support
+
+  libxml2 provides HTML parsing support for Emacs, which is necessary
+  to use the built-in eww browser.
+
+  In order to support libxml2 at runtime, a libxml2-enabled Emacs must
+  be able to find the relevant DLLs during startup; failure to do so
+  is not an error, but libxml2 features won't be available to the
+  running session.
+
+  You can get pre-built binaries (including any required DLL and the
+  header files) at http://sourceforge.net/projects/ezwinports/files/.
 
 * Uninstalling Emacs
 
@@ -178,6 +245,10 @@ See the end of the file for license conditions.
       truncated to abbrevli.elc, your distribution has been corrupted
       while unpacking and Emacs will not start.
 
+    * On Windows 9X, make sure you have the UNICOWS.DLL library either
+      in the same directory where you have emacs.exe or in the
+      directory where system-wide DLLs are kept.
+
   If you believe you have unpacked the distributions correctly and are
   still encountering problems, see the section on Further Information
   below.
@@ -191,14 +262,10 @@ See the end of the file for license conditions.
 
 * Further information
 
-  If you have access to the World Wide Web, I would recommend pointing
-  your favorite web browser to the following document (if you haven't
-  already):
-
-       http://www.gnu.org/software/emacs/windows/
+  The FAQ for the MS Windows port of Emacs is distributed with Emacs
+  (info manual "efaq-w32"), and also available at
 
-  This document serves as an FAQ and a source for further information
-  about the Windows port and related software packages.
+        http://www.gnu.org/software/emacs/manual/efaq-w32.html
 
   In addition to the FAQ, there is a mailing list for discussing issues
   related to the Windows port of Emacs.  For information about the