See the end of the file for license conditions.
The MSYS/MinGW build described here is supported on versions of
-Windows starting with Windows 2000 and newer. Windows 9X are not
-supported (but the Emacs binary produced by this build will run on
-Windows 9X as well).
+Windows starting with Windows XP and newer. Building on Windows 2000
+and Windows 9X is not supported (but the Emacs binary produced by this
+build will run on Windows 9X and newer systems).
Do not use this recipe with Cygwin. For building on Cygwin, use the
normal installation instructions, ../INSTALL.
. msys-base
. mingw-developer-toolkit
+ When the installation ends, perform the post-installation steps
+ described on this page of the MinGW site:
+
+ http://www.mingw.org/wiki/Getting_Started
+
+ in the "After Installing You Should ..." section. These steps are
+ important for making your installation complete, and in particular
+ will produce a desktop shortcut for running the MSYS Bash shell,
+ from which you will configure and build Emacs. Once you've made the
+ shortcut, double-click on it to open the MSYS Bash shell window,
+ where you will proceed with the rest of these instructions.
+
+ In addition, we suggest to modify your system-wide Path variable to
+ include the 'bin' subdirectory of your top-level MinGW installation
+ directory, the one you specified to mingw-get ("C:\MinGW" by
+ default). This will allow you to invoke the MinGW development
+ tools, like GCC, from the Windows cmd.exe shell windows or from
+ other Windows programs (including Emacs, after you build and install
+ it).
+
(We recommend that you refrain from installing the MSYS Texinfo
package, which is part of msys-base, because it might produce mixed
EOL format when installing Info files. Instead, install the MinGW
port of Texinfo, see the ezwinports URL below. To uninstall the
MSYS Texinfo, after installing it as part of msys-base, invoke the
- command "mingw-get remove msys-texinfo".)
+ command "mingw-get remove msys-texinfo", or mark "msys-texinfo" for
+ removal in the mingw-get GUI, then select Installation->Apply Changes.)
At this point, you should be ready to configure and build Emacs in
its basic configuration. Skip to the "Generating the configure
Available from http://sourceforge.net/projects/ezwinports/files/.
- . gzip (needed to compress files during "make install")
+ . pkg-config (invoked by the configure script to look for optional
+ packages)
- Available from http://gnuwin32.sourceforge.net/packages/gzip.htm.
+ Available from http://www.gtk.org/download/win32.php
- . pkg-config (needed for building with some optional libraries,
- such as GnuTLS and libxml2)
+ . gzip (needed to compress files during "make install")
- Available from http://www.gtk.org/download/win32.php
+ Available from http://gnuwin32.sourceforge.net/packages/gzip.htm.
Each package might list other packages as prerequisites on its
download page (under "Runtime requirements"); download those as
For example, use D:\MSYS or D:\usr\MSYS as the top-level directory
from which you unpack all of the MSYS packages.
+ After installing Automake and Autoconf, make sure any of the *.m4
+ files you might have in your MinGW installation also exist in the
+ MSYS installation tree, in the share/aclocal directory. Those *.m4
+ files which exist in the MinGW tree, but not in the MSYS tree should
+ be copied there.
+
If/when you are confident in your MinGW/MSYS installation, and want
to speed up the builds, we recommend installing a pre-release
version of Make from here:
Where should the build process find the source code? /path/to/emacs/sources
What compiler should emacs be built with? gcc -std=gnu99 -O0 -g3
- Should Emacs use the GNU version of malloc? yes
- Should Emacs use a relocating allocator for buffers? yes
- Should Emacs use mmap(2) for buffer allocation? no
+ Should Emacs use the GNU version of malloc? no
+ (The GNU allocators don't work with this system configuration.)
+ Should Emacs use a relocating allocator for buffers? no
+ Should Emacs use mmap(2) for buffer allocation? yes
What window system should Emacs use? w32
What toolkit should Emacs use? none
Where do we find X Windows header files? NONE
Does Emacs use -ljpeg? yes
Does Emacs use -ltiff? yes
Does Emacs use a gif library? yes
- Does Emacs use -lpng? yes
- Does Emacs use -lrsvg-2? no
+ Does Emacs use a png library? yes
+ Does Emacs use -lrsvg-2? yes
Does Emacs use imagemagick? no
+ Does Emacs support sound? no
Does Emacs use -lgpm? no
Does Emacs use -ldbus? no
Does Emacs use -lgconf? no
Does Emacs use GSettings? no
+ Does Emacs use a file notification library? yes (w32)
+ Does Emacs use access control lists? yes
Does Emacs use -lselinux? no
Does Emacs use -lgnutls? yes
Does Emacs use -lxml2? yes
Does Emacs use -lm17n-flt? no
Does Emacs use -lotf? no
Does Emacs use -lxft? no
+ Does Emacs directly use zlib? yes
Does Emacs use toolkit scroll bars? yes
You are almost there, hang on.