all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Arash Esbati <arash@gnu.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 55930@debbugs.gnu.org
Subject: bug#55930: 29.0.50; Removing some items from Emacs FAQ for MS Windows
Date: Tue, 14 Jun 2022 11:23:28 +0200	[thread overview]
Message-ID: <86a6afmwdr.fsf@gnu.org> (raw)
In-Reply-To: <83y1y0u37f.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 13 Jun 2022 16:01:56 +0300")

[-- Attachment #1: Type: text/plain, Size: 336 bytes --]

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Arash Esbati <arash@gnu.org>
>> Cc: 55930@debbugs.gnu.org
>> Date: Mon, 13 Jun 2022 14:39:35 +0200
>> 
>> Thanks for your comments.  I presume you mean to make this change
>> through the entire FAQ, right?
>
> Yes.

Thanks.  Next iteration is attached.  Any comments welcome.

Best, Arash

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: efaq-win32.texi.diff --]
[-- Type: text/x-patch, Size: 9592 bytes --]

diff --git a/doc/misc/efaq-w32.texi b/doc/misc/efaq-w32.texi
index 55175a3b89..4205179357 100644
--- a/doc/misc/efaq-w32.texi
+++ b/doc/misc/efaq-w32.texi
@@ -132,8 +132,9 @@ Which versions of Windows
 features of the X version, including variable width fonts, images and
 tooltips.
 
-Emacs on Windows can be compiled as either a 32-bit or a 64-bit
-executable, using the MinGW GCC compiler and development tools.
+Emacs on Windows can be compiled as either a 64-bit or a 32-bit
+executable, using either the MinGW-w64 or the MinGW GCC compiler and
+development tools.
 
 @node Other versions of Emacs
 @section What other versions of Emacs run on Windows?
@@ -177,8 +178,9 @@ Downloading
 site (as zip files digitally signed by the person who built them).
 See the @file{README} file in that directory for more information.
 Building Emacs from source yourself should be straightforward,
-following the instructions in @file{nt/INSTALL}, so we encourage you
-to give it a try.  @xref{Compiling}.
+following the instructions in @file{nt/INSTALL.W64} or
+@file{nt/INSTALL}, so we encourage you to give it a try.
+@xref{Compiling}.
 
 @cindex latest development version of Emacs
 @cindex Emacs Development
@@ -190,21 +192,53 @@ Compiling
 @section How can I compile Emacs myself?
 @cindex compiling Emacs
 
-To compile Emacs on Windows, you will need the MinGW port of GCC and
-Binutils, the MinGW runtime and development environment, and the MSYS
-suite of tools.  For the details, see the file @file{nt/INSTALL} in
-the Emacs source distribution.
+To compile Emacs on Windows, you will need either the MinGW-w64 port
+of GCC and Binutils, the MinGW-w64 runtime and development
+environment, and the MSYS2 suite of tools, or the MinGW port of GCC
+and the MSYS suite of tools.  For the details, see the files
+@file{nt/INSTALL.W64} or @file{nt/INSTALL} in the Emacs source
+distribution.
+
+Choosing the right environment from the ones mentioned above depends
+on your requirements and the Windows version you're using.  The list
+below should give some guidance:
+
+@itemize @w{}
+@item
+MinGW-w64 and MSYS2 (requires 64-bit Windows 7 or newer)
+
+@itemize
+@item
+You want to build a 64-bit Emacs executable.
+@item
+You want to build a 32-bit Emacs executable and want to use a newer
+version of GCC than 9.x.
+@item
+You want to have access to recent versions of other libraries for
+displaying images, TLS etc@. out of the box.
+@end itemize
+
+@item
+MinGW and MSYS
+@itemize
+@item
+You're using a 32-bit version of Windows.
+@item
+You're using a Windows version prior to Windows 7.
+@end itemize
+@end itemize
 
 Support for displaying images, as well as XML/HTML rendering and TLS
 networking requires external libraries, the headers and import
 libraries for which will need to be installed where your compiler can
 find them.  Again, the details, including URLs of sites where you can
-download these libraries are in @file{nt/INSTALL}.  @xref{Other useful
-ports}, for auxiliary tools you may wish to install and use in
-conjunction with Emacs.
+download these libraries are in @file{nt/INSTALL.W64} or
+@file{nt/INSTALL}.  @xref{Other useful ports}, for auxiliary tools you
+may wish to install and use in conjunction with Emacs.
 
 After unpacking the source, or checking out of the repository, be sure
-to read the instructions in @file{nt/README} and @file{nt/INSTALL}.
+to read the instructions in @file{nt/README} and @file{nt/INSTALL.W64}
+or @file{nt/INSTALL}.
 
 @node Debugging
 @section How do I use a debugger on Emacs?
@@ -222,18 +256,18 @@ Debugging
 
 @cindex debugging Emacs with GDB
 GDB is the GNU debugger, which can be used to debug Emacs when it has
-been compiled with MinGW GCC@.  The best results will be obtained if
-you start gdb from the @file{src} directory as @kbd{gdb ./emacs.exe}.
-This will load the init file @file{.gdbinit}@footnote{
+been compiled with MinGW64-w64 or MinGW GCC@.  The best results will
+be obtained if you start gdb from the @file{src} directory as @kbd{gdb
+./emacs.exe}.  This will load the init file @file{.gdbinit}@footnote{
 Latest versions of GDB might refuse to load the init file for security
 reasons, unless you customize GDB; alternatively, use an explicit
-@kbd{source ./gdbinit} command after entering GDB.
-} in that directory, to define some extra commands for working with
-lisp while debugging, and set up breakpoints to catch abnormal
-aborts.
+@kbd{source ./gdbinit} command after entering GDB.  } in that
+directory, to define some extra commands for working with lisp while
+debugging, and set up breakpoints to catch abnormal aborts.
 
-A Windows port of GDB can be found on MinGW download sites and on some
-others.
+A Windows port of GDB is installed with MinGW64-w64 and MSYS2
+(@samp{mingw-w64-<arch>-toolchain} group) or can be found on MinGW
+download sites and on some others.
 
 @c ------------------------------------------------------------
 @node Installing Emacs
@@ -307,8 +341,8 @@ Unpacking
 Expect @command{bsdtar} to unpack the whole distribution without any
 complaints.
 
-Once you unpack the source distribution, look in @file{nt/INSTALL}
-file for build instructions.
+Once you unpack the source distribution, look in @file{nt/INSTALL.W64}
+or @file{nt/INSTALL} file for build instructions.
 
 @node Installing binaries
 @section How do I install Emacs after unpacking the binary zip?
@@ -1645,8 +1679,8 @@ Attachments with Gnus
 In your @env{HOME} directory create a file called @file{.mailcap},
 with contents like the following:
 @example
-application/zip "C:/Program Files/7-Zip/7zFM.exe"
-video/* "C:/Program Files/VideoLAN/VLC/vlc.exe"
+application/zip; "C:/Program Files/7-Zip/7zFM.exe"
+video/*; "C:/Program Files/VideoLAN/VLC/vlc.exe"
 @end example
 
 @strong{Warning:} Associating MIME types with @command{start} or other
@@ -1754,11 +1788,13 @@ Spell check
 Emacs has support for spell checking on demand (@code{ispell}) and as
 your type (@code{flyspell}).  Both packages depend on a copy of
 @command{ispell} 3.2 or a compatible spell-checking program.
-GNU Aspell is a popular choice these days, Windows installers are
-available from the @uref{http://aspell.net/win32/, official site}.
+GNU Aspell is a popular choice these days, outdated Windows installers
+are available from the @uref{http://aspell.net/win32/, official site}.
 Another possibility is Hunspell, which is available from
 @uref{https://sourceforge.net/projects/ezwinports/files/?source=navbar,
-the ezwinports site}.
+the ezwinports site}.  If you're using the MSYS2 distribution, you can
+install a recent version of either GNU Aspell or Hunspell through the
+package manager Pacman.  @xref{Other useful ports}.
 
 Once installed, you will need to configure @code{ispell-program-name}
 to tell ispell and flyspell to use @command{aspell} or
@@ -2098,7 +2134,7 @@ Other useful ports
 * Cygwin::
 * MinGW::
 * EZWinPorts::
-* UWIN::
+* MinGW-w64::
 * GnuWin32::
 * GTK::
 * Read man pages::
@@ -2133,22 +2169,25 @@ Cygwin
 make the Cygwin tools available within Emacs by setting @code{exec-path}
 in your init file.
 
-@node MinGW
-@section MinGW and MSYS
-@cindex mingw tools
-@cindex msys environment
-@cindex subprocesses, mingw and msys
+@node MinGW-w64
+@section MinGW-w64 and MSYS2
+@cindex mingw-w64 tools
+@cindex msys2 environment
+@cindex subprocesses, mingw-w64 and msys2
 
-@uref{http://www.mingw.org/}
+@uref{https://www.msys2.org/}
 
-MinGW is a set of development tools that produce native Windows
+MinGW-w64 is a set of development tools that produce native Windows
 executables, not dependent on Cygwin's POSIX emulation DLLs.
+MinGW-w64 has forked the original MinGW in 2007 in order to provide
+support for 64 bits and new APIs.
 
-MSYS is a POSIX shell and minimal set of tools that are commonly used in
-configure scripts.  Like Cygwin, this environment uses a non-native
-filesystem mapping to appear more POSIX like to the scripts that it
-runs.  This is intended to complement the MinGW tools to make it easier
-to port software to Windows.
+MSYS2 is software distribution and a building platform for Windows.
+MSYS2 is an independent rewrite of MSYS, based on modern Cygwin and
+MinGW-w64 with the aim of better interoperability with native Windows
+software.  It plays the same role MSYS does in MinGW.  Being a
+distribution, MSYS2 provides tools to build software as well as more
+than 2.600 precompiled packages ready for use.
 
 @node EZWinPorts
 @section EZWinPorts
@@ -2161,16 +2200,22 @@ EZWinPorts
 @command{man} command, Grep, xz, bzip2, bsdtar, ID Utils, Findutils,
 Hunspell, Gawk, GNU Make, Groff, GDB.
 
-@node UWIN
-@section UWIN
-@cindex uwin environment
-@cindex subprocesses, uwin
+@node MinGW
+@section MinGW and MSYS
+@cindex mingw tools
+@cindex msys environment
+@cindex subprocesses, mingw and msys
 
-@uref{http://www.research.att.com/sw/tools/uwin/}
+@uref{https://osdn.net/projects/mingw/}
 
-UWIN is another POSIX emulation environment, like Cygwin and MSYS,
-that provides a large number of ported tools.  The shell used by UWIN
-is @command{ksh}, the Korn shell.
+MinGW is another set of development tools that produce native Windows
+executables, not dependent on Cygwin's POSIX emulation DLLs.
+
+MSYS is a POSIX shell and minimal set of tools that are commonly used in
+configure scripts.  Like Cygwin, this environment uses a non-native
+filesystem mapping to appear more POSIX like to the scripts that it
+runs.  This is intended to complement the MinGW tools to make it easier
+to port software to Windows.
 
 @node GnuWin32
 @section GnuWin32

  reply	other threads:[~2022-06-14  9:23 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-12 18:25 bug#55930: 29.0.50; Removing some items from Emacs FAQ for MS Windows Arash Esbati
2022-06-12 18:36 ` Eli Zaretskii
2022-06-13  9:18   ` Arash Esbati
2022-06-13 11:44     ` Eli Zaretskii
2022-06-13 12:39       ` Arash Esbati
2022-06-13 13:01         ` Eli Zaretskii
2022-06-14  9:23           ` Arash Esbati [this message]
2022-06-14 11:59             ` Eli Zaretskii
2022-06-15  8:42               ` Arash Esbati
2022-06-15 16:39                 ` Eli Zaretskii
2022-06-15 19:44                   ` Arash Esbati
2022-06-16  7:20                     ` Eli Zaretskii
2022-06-13 23:46         ` Jim Porter
2022-06-14  9:36           ` Arash Esbati

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86a6afmwdr.fsf@gnu.org \
    --to=arash@gnu.org \
    --cc=55930@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.