2014-01-01 07:43:34 +00:00
|
|
|
|
Copyright (C) 2001-2014 Free Software Foundation, Inc.
|
2008-01-31 01:31:36 +00:00
|
|
|
|
See the end of the file for license conditions.
|
|
|
|
|
|
2003-04-22 10:50:52 +00:00
|
|
|
|
Emacs for Windows
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
2012-02-05 20:56:41 +00:00
|
|
|
|
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:
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
2012-02-05 20:56:41 +00:00
|
|
|
|
ftp://ftp.gnu.org/gnu/emacs/windows/
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
|
|
|
|
This server contains other distributions, including the full Emacs
|
2014-02-08 10:25:33 +00:00
|
|
|
|
source distribution, as well as older releases of Emacs for Windows.
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
2012-02-05 20:56:41 +00:00
|
|
|
|
Information on how to compile Emacs from sources on Windows is in
|
2014-02-08 10:25:33 +00:00
|
|
|
|
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.
|
2012-02-05 20:56:41 +00:00
|
|
|
|
|
2001-08-29 13:58:01 +00:00
|
|
|
|
* Preliminaries
|
|
|
|
|
|
2013-12-23 18:32:58 +00:00
|
|
|
|
Along with this file should be four subdirectories (bin, libexec,
|
|
|
|
|
share, and var).
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
|
|
|
|
* Setting up Emacs
|
|
|
|
|
|
2009-02-23 13:17:21 +00:00
|
|
|
|
To install Emacs, simply unpack all the files into a directory of
|
2014-02-08 10:25:33 +00:00
|
|
|
|
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".
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
|
|
|
|
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,
|
|
|
|
|
eg. by dragging it on to the desktop or the Start button.
|
|
|
|
|
|
|
|
|
|
Note that running addpm is now an optional step; Emacs is able to
|
2009-02-23 13:17:21 +00:00
|
|
|
|
locate all of its files without needing any information to be set in
|
|
|
|
|
the environment or the registry, although such settings will still
|
|
|
|
|
be obeyed if present. This is convenient for running Emacs on a
|
|
|
|
|
machine which disallows registry changes, or on which software
|
|
|
|
|
should not be installed. For instance, you can now run Emacs
|
|
|
|
|
directly from a CD or USB flash drive without copying or installing
|
|
|
|
|
anything on the machine itself.
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
2011-10-28 15:03:13 +00:00
|
|
|
|
* 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
|
2014-02-08 10:25:33 +00:00
|
|
|
|
find the library, and will refuse to start up.
|
2011-10-28 15:03:13 +00:00
|
|
|
|
|
2001-08-29 13:58:01 +00:00
|
|
|
|
* Starting Emacs
|
|
|
|
|
|
|
|
|
|
To run Emacs, simply select Emacs from the Start Menu, or invoke
|
2009-02-23 13:17:21 +00:00
|
|
|
|
runemacs.exe directly from Explorer or from a command prompt. This
|
|
|
|
|
will start Emacs in its default GUI mode, ready to use. If you have
|
|
|
|
|
never used Emacs before, you should follow the tutorial at this
|
|
|
|
|
point (select Emacs Tutorial from the Help menu), since Emacs is
|
|
|
|
|
quite different from ordinary Windows applications in many respects.
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
|
|
|
|
If you want to use Emacs in tty or character mode within a command
|
|
|
|
|
window, you can start it by typing "emacs -nw" at the command prompt.
|
|
|
|
|
(Obviously, you need to ensure that the Emacs bin subdirectory is in
|
|
|
|
|
your PATH first, or specify the path to emacs.exe.) The -nw
|
|
|
|
|
(non-windowed) mode of operation is most useful if you have a telnet
|
|
|
|
|
server on your machine, allowing you to run Emacs remotely.
|
|
|
|
|
|
2008-02-01 00:14:53 +00:00
|
|
|
|
* EXE files included
|
|
|
|
|
|
|
|
|
|
Emacs comes with the following executable files in the bin directory.
|
|
|
|
|
|
2009-02-24 11:50:34 +00:00
|
|
|
|
+ emacs.exe - The main Emacs executable. As this is designed to run
|
2008-02-01 00:14:53 +00:00
|
|
|
|
as both a text-mode application (emacs -nw) and as a GUI application,
|
|
|
|
|
it will pop up a command prompt window if run directly from Explorer.
|
|
|
|
|
|
|
|
|
|
+ runemacs.exe - A wrapper for running Emacs as a GUI application
|
2011-10-28 15:03:13 +00:00
|
|
|
|
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.
|
2008-02-01 00:14:53 +00:00
|
|
|
|
|
|
|
|
|
+ emacsclient.exe - A command-line client program that can
|
2009-02-24 11:50:34 +00:00
|
|
|
|
communicate with a running Emacs process. See the `Emacs Server'
|
2009-02-05 15:30:32 +00:00
|
|
|
|
node of the Emacs manual.
|
2008-02-01 00:14:53 +00:00
|
|
|
|
|
|
|
|
|
+ emacsclientw.exe - A version of emacsclient that does not open
|
|
|
|
|
a command-line window.
|
|
|
|
|
|
|
|
|
|
+ addpm.exe - A basic installer that creates Start Menu icons for Emacs.
|
|
|
|
|
Running this is optional.
|
|
|
|
|
|
|
|
|
|
+ ctags.exe, etags.exe - Tools for generating tag files. See the
|
2009-02-24 11:50:34 +00:00
|
|
|
|
`Tags' node of the Emacs manual.
|
2008-02-01 00:14:53 +00:00
|
|
|
|
|
|
|
|
|
+ ebrowse.exe - A tool for generating C++ browse information. See the
|
|
|
|
|
`Ebrowse' manual.
|
|
|
|
|
|
2013-12-23 18:32:58 +00:00
|
|
|
|
Several helper programs are in a version-specific subdirectory of
|
|
|
|
|
the libexec directory:
|
|
|
|
|
|
|
|
|
|
+ cmdproxy.exe - Used internally by Emacs to work around problems with
|
|
|
|
|
the native shells in various versions of Windows.
|
|
|
|
|
|
2013-04-01 07:28:56 +00:00
|
|
|
|
+ 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.
|
2008-02-01 00:14:53 +00:00
|
|
|
|
|
2011-10-28 15:03:13 +00:00
|
|
|
|
+ hexl.exe - A tool for producing hex dumps of binary files. See the
|
2008-02-01 00:14:53 +00:00
|
|
|
|
`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.
|
|
|
|
|
|
2013-12-23 18:32:58 +00:00
|
|
|
|
+ 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.
|
|
|
|
|
|
2007-10-18 21:00:43 +00:00
|
|
|
|
* Image support
|
|
|
|
|
|
|
|
|
|
Emacs has built in support for XBM and PPM/PGM/PBM images, and the
|
2014-02-08 10:25:33 +00:00
|
|
|
|
libXpm library is bundled, providing XPM support (required for color
|
|
|
|
|
toolbar icons and splash screen). Source for libXpm should be available
|
|
|
|
|
from the same place from which you got this binary distribution.
|
|
|
|
|
|
|
|
|
|
Emacs can also support some other image formats with appropriate
|
2013-12-23 18:32:58 +00:00
|
|
|
|
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
|
2014-02-08 10:25:33 +00:00
|
|
|
|
-- the GTK project site; offers much fatter builds, but includes
|
|
|
|
|
64-bit DLLs (from the 2nd URL)
|
2013-12-23 18:32:58 +00:00
|
|
|
|
3. GnuWin32 project -- very old builds, not recommended
|
|
|
|
|
|
2014-02-08 10:25:33 +00:00
|
|
|
|
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.
|
2007-10-18 21:00:43 +00:00
|
|
|
|
|
2014-02-08 10:25:33 +00:00
|
|
|
|
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:
|
2010-12-31 12:38:06 +00:00
|
|
|
|
|
|
|
|
|
PNG: requires the PNG reference library 1.4 or later, which will
|
2013-12-23 18:32:58 +00:00
|
|
|
|
be named libpngNN.dll or libpngNN-NN.dll. LibPNG requires zlib,
|
2010-12-31 12:38:06 +00:00
|
|
|
|
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.
|
2007-10-18 21:00:43 +00:00
|
|
|
|
|
2011-11-11 23:17:16 +00:00
|
|
|
|
JPEG: requires the Independent JPEG Group's libjpeg 6b or later,
|
2007-10-18 21:00:43 +00:00
|
|
|
|
which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll.
|
|
|
|
|
|
2014-02-08 10:25:33 +00:00
|
|
|
|
TIFF: requires libTIFF 3.0 or later, which will be called libtiffN.dll
|
|
|
|
|
or libtiff-N.dll or libtiff.dll.
|
2007-10-18 21:00:43 +00:00
|
|
|
|
|
|
|
|
|
GIF: requires libungif or giflib 4.1 or later, which will be
|
2013-12-23 18:32:58 +00:00
|
|
|
|
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
|
2014-02-08 10:25:33 +00:00
|
|
|
|
site, you need only librsvg-2.nn.mm-x-w32-bin.zip, it comes with
|
|
|
|
|
all the other dependencies bundled.
|
2007-10-18 21:00:43 +00:00
|
|
|
|
|
2010-12-31 12:38:06 +00:00
|
|
|
|
If you have image support DLLs under different names, customize the
|
2011-01-02 21:58:13 +00:00
|
|
|
|
value of `dynamic-library-alist'.
|
2010-12-31 12:38:06 +00:00
|
|
|
|
|
2011-05-17 18:17:45 +00:00
|
|
|
|
* GnuTLS support
|
|
|
|
|
|
2014-02-08 06:36:11 +00:00
|
|
|
|
GnuTLS provides SSL/TLS network support for Emacs (https, imaps and
|
|
|
|
|
so on.)
|
|
|
|
|
|
2011-05-17 18:17:45 +00:00
|
|
|
|
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.
|
|
|
|
|
|
2013-12-23 18:32:58 +00:00
|
|
|
|
You can get pre-built binaries (including any dependency DLLs) at
|
|
|
|
|
http://sourceforge.net/projects/ezwinports/files/.
|
2011-05-17 18:17:45 +00:00
|
|
|
|
|
2012-04-07 13:57:36 +00:00
|
|
|
|
* libxml2 support
|
|
|
|
|
|
2014-02-08 06:36:11 +00:00
|
|
|
|
libxml2 provides HTML parsing support for Emacs, which is necessary
|
|
|
|
|
to use the built-in eww browser.
|
|
|
|
|
|
2012-04-07 13:57:36 +00:00
|
|
|
|
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/.
|
|
|
|
|
|
2001-08-29 13:58:01 +00:00
|
|
|
|
* Uninstalling Emacs
|
|
|
|
|
|
2009-02-23 13:17:21 +00:00
|
|
|
|
If you should need to uninstall Emacs, simply delete all the files
|
|
|
|
|
and subdirectories from the directory where it was unpacked (Emacs
|
|
|
|
|
does not install or update any files in system directories or
|
|
|
|
|
anywhere else). If you ran the addpm.exe program to create the
|
|
|
|
|
registry entries and the Start menu icon, then you can remove the
|
|
|
|
|
registry entries using regedit. All of the settings are written
|
|
|
|
|
under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you
|
|
|
|
|
didn't have administrator privileges when you installed, the same
|
|
|
|
|
key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs
|
|
|
|
|
key.
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
2014-10-09 00:47:30 +00:00
|
|
|
|
The Start menu entry can be removed by right-clicking on the Taskbar
|
2001-08-29 13:58:01 +00:00
|
|
|
|
and selecting Properties, then using the Remove option on the Start
|
|
|
|
|
Menu Programs page. (If you installed under an account with
|
|
|
|
|
administrator privileges, then you need to click the Advanced button
|
|
|
|
|
and look for the Gnu Emacs menu item under All Users.)
|
|
|
|
|
|
|
|
|
|
* Troubleshooting
|
|
|
|
|
|
|
|
|
|
Unpacking the distributions
|
|
|
|
|
|
|
|
|
|
If you encounter trouble trying to run Emacs, there are a number of
|
2009-02-23 13:17:21 +00:00
|
|
|
|
possible causes. Check the following for indications that the
|
|
|
|
|
distribution was not corrupted by the tools used to unpack it:
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
2009-02-23 13:17:21 +00:00
|
|
|
|
* Be sure to disable CR/LF translation or the executables will
|
2001-08-29 13:58:01 +00:00
|
|
|
|
be unusable. Older versions of WinZipNT would enable this
|
|
|
|
|
translation by default. If you are using WinZipNT, disable it.
|
|
|
|
|
(I don't have WinZipNT myself, and I do not know the specific
|
|
|
|
|
commands necessary to disable it.)
|
|
|
|
|
|
|
|
|
|
* Check that filenames were not truncated to 8.3. For example,
|
|
|
|
|
there should be a file lisp\abbrevlist.elc; if this has been
|
|
|
|
|
truncated to abbrevli.elc, your distribution has been corrupted
|
|
|
|
|
while unpacking and Emacs will not start.
|
|
|
|
|
|
2011-10-28 15:03:13 +00:00
|
|
|
|
* 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.
|
|
|
|
|
|
2001-08-29 13:58:01 +00:00
|
|
|
|
If you believe you have unpacked the distributions correctly and are
|
|
|
|
|
still encountering problems, see the section on Further Information
|
|
|
|
|
below.
|
|
|
|
|
|
|
|
|
|
Virus scanners
|
|
|
|
|
|
|
|
|
|
Some virus scanners interfere with Emacs' use of subprocesses. If you
|
|
|
|
|
are unable to use subprocesses and you use Dr. Solomon's WinGuard or
|
|
|
|
|
McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector
|
|
|
|
|
scanning" (McAfee exclusion properties).
|
|
|
|
|
|
|
|
|
|
* Further information
|
|
|
|
|
|
2013-08-27 19:40:24 +00:00
|
|
|
|
The FAQ for the MS Windows port of Emacs is distributed with Emacs
|
|
|
|
|
(info manual "efaq-w32"), and also available at
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
2013-08-27 19:40:24 +00:00
|
|
|
|
http://www.gnu.org/software/emacs/manual/efaq-w32.html
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
|
|
|
|
In addition to the FAQ, there is a mailing list for discussing issues
|
2001-11-18 12:16:19 +00:00
|
|
|
|
related to the Windows port of Emacs. For information about the
|
|
|
|
|
list, see this Web page:
|
|
|
|
|
|
2006-03-28 10:25:15 +00:00
|
|
|
|
http://lists.gnu.org/mailman/listinfo/help-emacs-windows
|
2001-11-18 12:16:19 +00:00
|
|
|
|
|
|
|
|
|
To ask questions on the mailing list, send email to
|
|
|
|
|
help-emacs-windows@gnu.org. (You don't need to subscribe for that.)
|
|
|
|
|
To subscribe to the list or unsubscribe from it, fill the form you
|
2006-03-28 10:25:15 +00:00
|
|
|
|
find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as
|
2001-11-18 12:16:19 +00:00
|
|
|
|
explained there.
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
|
|
|
|
Another valuable source of information and help which should not be
|
|
|
|
|
overlooked is the various Usenet news groups dedicated to Emacs.
|
2009-02-24 11:50:34 +00:00
|
|
|
|
These are particularly good for help with general issues which aren't
|
2001-08-29 13:58:01 +00:00
|
|
|
|
specific to the Windows port of Emacs. The main news groups to use
|
|
|
|
|
for seeking help are:
|
|
|
|
|
|
|
|
|
|
gnu.emacs.help
|
|
|
|
|
comp.emacs
|
|
|
|
|
|
|
|
|
|
There are also fairly regular postings and announcements of new or
|
|
|
|
|
updated Emacs packages on this group:
|
|
|
|
|
|
|
|
|
|
gnu.emacs.sources
|
|
|
|
|
|
|
|
|
|
* Reporting bugs
|
|
|
|
|
|
|
|
|
|
If you encounter a bug in this port of Emacs, we would like to hear
|
|
|
|
|
about it. First check the FAQ on the web page above to see if the bug
|
|
|
|
|
is already known and if there are any workarounds. Then check whether
|
|
|
|
|
the bug has something to do with code in your .emacs file, e.g. by
|
2009-02-23 13:17:21 +00:00
|
|
|
|
invoking Emacs with the "-Q" option.
|
|
|
|
|
|
|
|
|
|
If you decide that it is a bug in Emacs, use the built in bug
|
|
|
|
|
reporting facility to report it (from the menu; Help -> Send Bug Report).
|
|
|
|
|
If you have not yet configured Emacs for mail, then when you press
|
|
|
|
|
C-c C-c to send the report, it will ask you to paste the text of the
|
2009-02-24 11:50:34 +00:00
|
|
|
|
report into your mail client. If the bug is related to subprocesses,
|
|
|
|
|
also specify which shell you are using (e.g., include the values of
|
|
|
|
|
`shell-file-name' and `explicit-shell-file-name' in your message).
|
2001-08-29 13:58:01 +00:00
|
|
|
|
|
2003-04-22 09:29:31 +00:00
|
|
|
|
Enjoy!
|
2008-01-31 01:31:36 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This file is part of GNU Emacs.
|
|
|
|
|
|
2008-05-09 23:48:10 +00:00
|
|
|
|
GNU Emacs is free software: you can redistribute it and/or modify
|
2008-01-31 01:31:36 +00:00
|
|
|
|
it under the terms of the GNU General Public License as published by
|
2008-05-09 23:48:10 +00:00
|
|
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
|
|
|
(at your option) any later version.
|
2008-01-31 01:31:36 +00:00
|
|
|
|
|
|
|
|
|
GNU Emacs is distributed in the hope that it will be useful,
|
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
GNU General Public License for more details.
|
|
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License
|
2008-05-09 23:48:10 +00:00
|
|
|
|
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|