From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: vincent.belaiche@gmail.com (Vincent =?UTF-8?Q?Bela=C3=AFche?=) Newsgroups: gmane.emacs.bugs Subject: bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems. Date: Thu, 19 Oct 2017 10:25:52 +0200 Message-ID: <847evr1r3j.fsf@gmail.com> References: <84o9pyim1a.fsf@AigleRoyal> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: blaine.gmane.org 1508401633 5884 195.159.176.226 (19 Oct 2017 08:27:13 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 19 Oct 2017 08:27:13 +0000 (UTC) Cc: 28601@debbugs.gnu.org, Vincent =?UTF-8?Q?Bela=C3=AFche?= To: Noam Postavsky Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Oct 19 10:27:07 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e56AU-0000lK-RT for geb-bug-gnu-emacs@m.gmane.org; Thu, 19 Oct 2017 10:27:07 +0200 Original-Received: from localhost ([::1]:48150 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e56Ac-0004ut-AF for geb-bug-gnu-emacs@m.gmane.org; Thu, 19 Oct 2017 04:27:14 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48854) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e56AT-0004uX-Qz for bug-gnu-emacs@gnu.org; Thu, 19 Oct 2017 04:27:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e56AQ-00036M-JQ for bug-gnu-emacs@gnu.org; Thu, 19 Oct 2017 04:27:05 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:40396) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1e56AQ-00035t-E4 for bug-gnu-emacs@gnu.org; Thu, 19 Oct 2017 04:27:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1e56AQ-0003kp-0o for bug-gnu-emacs@gnu.org; Thu, 19 Oct 2017 04:27:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: vincent.belaiche@gmail.com (Vincent =?UTF-8?Q?Bela=C3=AFche?=) Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 19 Oct 2017 08:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28601 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 28601-submit@debbugs.gnu.org id=B28601.150840156614354 (code B ref 28601); Thu, 19 Oct 2017 08:27:01 +0000 Original-Received: (at 28601) by debbugs.gnu.org; 19 Oct 2017 08:26:06 +0000 Original-Received: from localhost ([127.0.0.1]:49077 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e569V-0003jS-Fr for submit@debbugs.gnu.org; Thu, 19 Oct 2017 04:26:06 -0400 Original-Received: from mail-wm0-f66.google.com ([74.125.82.66]:49655) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e569S-0003iv-Qd for 28601@debbugs.gnu.org; Thu, 19 Oct 2017 04:26:03 -0400 Original-Received: by mail-wm0-f66.google.com with SMTP id b189so14227024wmd.4 for <28601@debbugs.gnu.org>; Thu, 19 Oct 2017 01:26:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:in-reply-to:date:message-id:mime-version; bh=uT8nx9ti8m0U2OSsnfFjbhps/Ki/dxCmIV5xnGV17C8=; b=tBUSfJhuZnqmwKynEJy/RbOwhHjQ+AzkjWkQWeDyKbW9weEh8KqvNxQF4XaQzIqMZ9 M3rBi1Oj+8MUzKiA8q5wR4iEvCKDfQndlz0e6JtO0toEANm5zwlUR9LV/b4Sh8hwlz6Z 51kFm/eBbSLy0UL1TUG+JdhS6PbRX8HAmKweY64wYG++jKu32Y8x6ERT+39Z3CrFvw8z ctyA4SA1VxUYHlXJp7qV48wcssyDwWRpdxJJTX5j01IsVzRTkT448wqQQLo6R6n4QK8O KXOnaz3DW4abXgMvHOe66CaFU5hQZRKq4XmEQzJ1JVnehJhVqjVftQEtmDquuflMt+hS 162A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:in-reply-to:date:message-id :mime-version; bh=uT8nx9ti8m0U2OSsnfFjbhps/Ki/dxCmIV5xnGV17C8=; b=JpRrUogCp1OhL8b9aSxaJh4gEWbj/xtTKUWx48TeCd6c/06uZkVOmWjyaaRzHKF0VN MLxVyX4jfSmo2pEAy/GJNUSRovEfTpqRt3yxc+0J+4jyC5SJnJyjh8+r751GLEQuzXPX aR9aZkLyJqqTZVQOozknM/S8+NKKhSzJko1YmvfSti2Wwmkod2PKWq2FtpR57BURCFkT xuOls6CDfjpN7w9b6x5HFaAYC7CmozojuG7QZ44g9vM2GEBlWg+FuJC4VOi8JzfRC1yM uX/EagHfKRFZIAfgcHKdeqv6aph4YlGTNOtZ8RamdQlC9cxfjOlfiNZK+vZfMqECJtjN JVzQ== X-Gm-Message-State: AMCzsaU/VE9xwoZ+AlK5y4WC3vI3D1X291yGXG6fh9YC1xqAOC+DnwrJ USFgai//R9ThJEyjzJRvzoDgxmbo X-Google-Smtp-Source: ABhQp+QZO06BzPPGJek6x+pfiRNQu1avNxi7IJAS8fXyVflbqUUnjK6WPhhT+4mXdiJoEnBsWBECtA== X-Received: by 10.28.168.203 with SMTP id r194mr906994wme.2.1508401556571; Thu, 19 Oct 2017 01:25:56 -0700 (PDT) Original-Received: from AIGLEROYAL (ARennes-656-1-324-69.w109-218.abo.wanadoo.fr. [109.218.212.69]) by smtp.gmail.com with ESMTPSA id i1sm8335598wri.34.2017.10.19.01.25.53 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 19 Oct 2017 01:25:54 -0700 (PDT) In-Reply-To: X-Antivirus: Avast (VPS 171018-10, 18/10/2017), Outbound message X-Antivirus-Status: Clean X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:138709 Archived-At: --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Answers inserted below... Le 16/10/2017 =C3=A0 23:42, Noam Postavsky a =C3=A9crit : > On Mon, Oct 16, 2017 at 1:11 PM, Vincent Bela=C3=AFche > wrote: > >> I does not work for me if I don't change MSWindows PATH. But the text >> needs revision anyway because it does not say what has to be >> ensured. >> >> What happens for me is that c:\MSYS\INSTALL\DIR\msys64\mingw64\bin has >> to be high enough in the path list, otherwise Emacs gets frozen on >> start. >> >> I have not fully identified how high it has to be. It seems that if it >> is not before c:\Perl64\site\bin then the freeze happens (to be >> confirmed by more tests). c:\Perl64\site\bin is some ActiveState native >> perl implementation which contains a gcc.exe executable but no DLL's. > > I tried installing ActiveState perl, it adds this directory to PATH, > but the directory is empty (so of course there is no effect). Yes, this directory gets filled when you launch cpan, and install some module which I can't remember. Anyway, ActiveState is not to be blamed, I was a bit too quick in speculating that. After some dichotomy on the position of c:\msys64\mingw64\bin in the PATH I found that the conflict is with some c:\...\gtk\bin directory the content of which is as follows: --8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8---- c:\Nos_Programmes\gtk\bin>dir dir Le volume dans le lecteur C n=E2=80=99a pas de nom. Le num=C3=A9ro de s=C3=A9rie du volume est AC5E-0292 R=C3=A9pertoire de c:\Nos_Programmes\gtk\bin 18/05/2015 12:12 . 18/05/2015 12:12 .. 01/12/2013 14:25 24=C2=A0525 autopoint 01/12/2013 14:38 1=C2=A0538 croco-0.6-config 01/12/2013 14:25 143=C2=A0837 envsubst.exe 01/12/2013 14:32 75=C2=A0043 fc-cache.exe 01/12/2013 14:32 73=C2=A0222 fc-cat.exe 01/12/2013 14:32 69=C2=A0653 fc-list.exe 01/12/2013 14:32 71=C2=A0841 fc-match.exe 01/12/2013 14:32 69=C2=A0673 fc-pattern.exe 01/12/2013 14:32 68=C2=A0340 fc-query.exe 01/12/2013 14:32 69=C2=A0271 fc-scan.exe 01/12/2013 14:32 3=C2=A0847 freetype-config 01/12/2013 14:31 1=C2=A0380 gdbus-codegen 01/12/2013 14:31 105=C2=A0157 gdbus.exe 01/12/2013 14:37 66=C2=A0211 gdk-pixbuf-csource.exe 01/12/2013 14:37 64=C2=A0161 gdk-pixbuf-pixdata.exe 01/12/2013 14:37 70=C2=A0492 gdk-pixbuf-query-loaders.exe 01/12/2013 14:25 142=C2=A0760 gettext.exe 01/12/2013 14:25 4=C2=A0616 gettext.sh 01/12/2013 14:25 42=C2=A0170 gettextize 01/12/2013 14:31 65=C2=A0677 gio-querymodules.exe 01/12/2013 14:31 107=C2=A0342 glib-compile-resources.exe 01/12/2013 14:31 118=C2=A0257 glib-compile-schemas.exe 01/12/2013 14:31 90=C2=A0048 glib-genmarshal.exe 01/12/2013 14:31 5=C2=A0483 glib-gettextize 01/12/2013 14:31 17=C2=A0968 glib-mkenums 01/12/2013 14:31 64=C2=A0842 gobject-query.exe 01/12/2013 14:31 70=C2=A0879 gresource.exe 01/12/2013 14:31 83=C2=A0275 gsettings.exe 01/12/2013 14:31 66=C2=A0125 gspawn-win64-helper-console.exe 01/12/2013 14:31 66=C2=A0243 gspawn-win64-helper.exe 01/12/2013 15:05 68=C2=A0226 gtk-query-immodules-3.0.exe 01/12/2013 15:05 99=C2=A0034 gtk-update-icon-cache.exe 01/12/2013 15:05 585 gtk-update-icon-cache.exe.manifest 01/12/2013 15:05 192=C2=A0548 gtk3-demo-application.exe 01/12/2013 15:05 516=C2=A0715 gtk3-demo.exe 01/12/2013 15:05 145=C2=A0457 gtk3-widget-factory.exe 01/12/2013 14:25 91=C2=A0682 libasprintf-0.dll 01/12/2013 14:37 215=C2=A0280 libatk-1.0-0.dll 01/12/2013 14:34 972=C2=A0041 libcairo-2.dll 01/12/2013 14:34 73=C2=A0310 libcairo-gobject-2.dll 01/12/2013 14:34 208=C2=A0739 libcairo-script-interpreter-2.dll 01/12/2013 14:20 52=C2=A0957 libcharset-1.dll 01/12/2013 14:38 338=C2=A0000 libcroco-0.6-3.dll 01/12/2013 14:27 83=C2=A0622 libffi-6.dll 01/12/2013 14:32 347=C2=A0810 libfontconfig-1.dll 01/12/2013 14:32 752=C2=A0539 libfreetype-6.dll 01/12/2013 15:05 93=C2=A0389 libgailutil-3-0.dll 01/12/2013 15:05 870=C2=A0852 libgdk-3-0.dll 01/12/2013 14:37 356=C2=A0005 libgdk_pixbuf-2.0-0.dll 01/12/2013 14:25 1=C2=A0401=C2=A0627 libgettextlib-0-18-2.dll 01/12/2013 14:25 398=C2=A0632 libgettextpo-0.dll 01/12/2013 14:25 320=C2=A0913 libgettextsrc-0-18-2.dll 01/12/2013 14:31 1=C2=A0789=C2=A0609 libgio-2.0-0.dll 01/12/2013 14:31 1=C2=A0513=C2=A0572 libglib-2.0-0.dll 01/12/2013 14:31 64=C2=A0399 libgmodule-2.0-0.dll 01/12/2013 14:31 403=C2=A0969 libgobject-2.0-0.dll 01/12/2013 14:31 49=C2=A0635 libgthread-2.0-0.dll 01/12/2013 15:05 6=C2=A0317=C2=A0774 libgtk-3-0.dll 01/12/2013 14:20 1=C2=A0055=C2=A0676 libiconv-2.dll 01/12/2013 14:25 154=C2=A0337 libintl-8.dll 01/12/2013 14:35 449=C2=A0890 libjasper-1.dll 01/12/2013 14:35 345=C2=A0339 libjpeg-9.dll 01/12/2013 14:26 232=C2=A0483 liblzma-5.dll 01/12/2013 14:35 439=C2=A0347 libpango-1.0-0.dll 01/12/2013 14:35 142=C2=A0951 libpangocairo-1.0-0.dll 01/12/2013 14:35 1=C2=A0167=C2=A0075 libpangoft2-1.0-0.dll 01/12/2013 14:35 147=C2=A0550 libpangowin32-1.0-0.dll 01/12/2013 14:33 1=C2=A0945=C2=A0714 libpixman-1-0.dll 01/12/2013 14:32 2=C2=A0348 libpng-config 01/12/2013 14:32 265=C2=A0538 libpng15-15.dll 01/12/2013 14:32 2=C2=A0348 libpng15-config 01/12/2013 15:07 362=C2=A0691 librsvg-2-2.dll 01/12/2013 14:37 606=C2=A0630 libtiff-5.dll 01/12/2013 14:27 1=C2=A0740=C2=A0678 libxml2-2.dll 01/12/2013 14:25 142=C2=A0908 ngettext.exe 01/12/2013 14:35 72=C2=A0342 pango-querymodules.exe 01/12/2013 14:35 121=C2=A0526 pango-view.exe 01/12/2013 14:31 117=C2=A0703 pkg-config.exe 01/12/2013 15:16 55=C2=A0246 pthreadGC2.dll 01/12/2013 14:27 1=C2=A0681 xml2-config 01/12/2013 14:27 145=C2=A0311 xmllint.exe 01/12/2013 14:25 91=C2=A0136 zlib1.dll 82 fichier(s) 29=C2=A0471=C2=A0245 octets 2 R=C3=A9p(s) 101=C2=A0430=C2=A0677=C2=A0504 octets libres --8<----8<----8<----8<----8<-- end -->8---->8---->8---->8---->8---- I can't remember when and why I installed this, but this is what causes the conflict, and placing c:\msys64\mingw64\bin just before it solves it, and apparently did not change anything for the application which I use on a regular basis. I have not investigated further which DLL in this directory is the conflict cause. What happens when PATH is incorrecly configured is that at Emacs start-up the Emacs windows appears, it remains black and everying is frozen (no keyboard events, no mouse event, to kill Emacs I need to go to the MSWindows Task manager). > >>> Is there some reason you changed to a for loop? >>> >> >> Yes, I had some packages already installed, and if I just type >> >> pacman -S msys/msys2-launcher-git \ >> msys/m4 \ >> msys/autoconf \ > [...] >> >> and I type ENTER for defaulting to =C2=AB all =C2=BB then it seems that = pacman >> does not really re-install anything. With a look thing are handled one >> by one more cleanly, and it is easier for the user to discriminate. > > Yes, it seems that it hits an error trying to install > mingw64/mingw-w64-x86_64-liblcms2, and then just quits. The error is > somewhat lost in the noise: > > error: target not found: mingw-w64-x86_64-liblcms2 > > It seems the name must be updated to mingw-w64-x86_64-lcms2. I did that, and now it is fine w/o the loop. > > A drawback of the for loop method is that it is difficult to abort, > even hitting Ctrl+C doesn't stop the loop, you have to hit it again > for each package. OK. I attached a revised patch. I did not yet changed the section =C2=AB=C2=A0*= * Configure your MSYS2 PATH variable for application running from an mingw64 console=C2=A0=C2=BB. I will do a further edit about that. This sect= ion will be renamed to =C2=AB=C2=A0** Check your MSYS2 PATH variable=C2=A0=C2= =BB and describe just the checking, and the bulk of the section about editing ~/.bashrc will be pushed to some =C2=AB=C2=A0Trouble shooting=C2=A0=C2=BB section, be= cause, as I had written, the real problem was my improrer hacking of /msys2_sell.cmd & ~/.bashrc scripts. BTW, I have made one more comment to MSYS2 issue tracker with a revised MSYS2 launcher MSDos script fixing this PATH initialization issue caused by my previous hack: https://github.com/msys2/msys2/issues/71#issuecomment-337727083 I don't know whether MSYS2 people will buy that, now there is the launcher module. Yes, I still find that the MSDos script is useful for getting finer control/understanding about the launch. VBR, Vincent. --- L'absence de virus dans ce courrier =C3=A9lectronique a =C3=A9t=C3=A9 v=C3= =A9rifi=C3=A9e par le logiciel antivirus Avast. https://www.avast.com/antivirus --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=INSTALL.W64.diff diff --git a/nt/INSTALL.W64 b/nt/INSTALL.W64 index 4a93dc0..070ad34 100644 --- a/nt/INSTALL.W64 +++ b/nt/INSTALL.W64 @@ -29,24 +29,32 @@ build tools for MinGW-w64 -- see http://msys2.github.io/. You can download the x86_64 version of MSYS2 (i.e. msys2-x86_64-.exe) from - https://sourceforge.net/projects/msys2/files/Base/x86_64 + https://sourceforge.net/projects/msys2/files/Base/x86_64 Run this file to install MSYS2 in your preferred directory, e.g. the default C:\msys64 -- this will install MinGW-w64 also. Note that directory names containing spaces may cause problems. +* Configure your MSWindows PATH variable + Then you'll need to add the following directories to your Windows PATH environment variable: c:\msys64\usr\bin;c:\msys64\mingw64\bin -you can do this through Control Panel / System and Security / System / +where c:\msys64 depends on your MSYS2 installation, and is c:\msys64 by +default. + +You can do this through Control Panel / System and Security / System / Advanced system settings / Environment Variables / Edit path. Adding these directories to your PATH tells Emacs where to find the DLLs it needs to run, and some optional commands like grep and find. These commands will also be available at the Windows console. +Concerning the find command see also the last step about configuring +your init file to get an MSWindows find port. + ** Download and install the necessary packages Run msys2_shell.bat in your MSYS2 directory and you will see a BASH window @@ -55,25 +63,85 @@ opened. In the BASH prompt, use the following command to install the necessary packages (you can copy and paste it into the shell with Shift + Insert): - pacman -S base-devel \ - mingw-w64-x86_64-toolchain \ - mingw-w64-x86_64-xpm-nox \ - mingw-w64-x86_64-libtiff \ - mingw-w64-x86_64-giflib \ - mingw-w64-x86_64-libpng \ - mingw-w64-x86_64-libjpeg-turbo \ - mingw-w64-x86_64-librsvg \ - mingw-w64-x86_64-liblcms2 \ - mingw-w64-x86_64-libxml2 \ - mingw-w64-x86_64-gnutls \ - mingw-w64-x86_64-zlib + pacman -S msys/msys2-launcher-git \ + msys/m4 \ + msys/autoconf \ + msys/grep \ + msys/findutils \ + mingw64/mingw-w64-x86_64-pkg-config \ + mingw64/mingw-w64-x86_64-make \ + mingw64/mingw-w64-x86_64-toolchain \ + mingw64/mingw-w64-x86_64-xpm-nox \ + mingw64/mingw-w64-x86_64-libtiff \ + mingw64/mingw-w64-x86_64-giflib \ + mingw64/mingw-w64-x86_64-libpng \ + mingw64/mingw-w64-x86_64-libjpeg-turbo \ + mingw64/mingw-w64-x86_64-librsvg \ + mingw64/mingw-w64-x86_64-lcms2 \ + mingw64/mingw-w64-x86_64-libxml2 \ + mingw64/mingw-w64-x86_64-gnutls \ + mingw64/mingw-w64-x86_64-zlib + +Answer Y (for yes) to all questions when the package is not up to date, and n +(for no) otherwise. The packages include the base developer tools (autoconf, grep, make, etc.), the compiler toolchain (gcc, gdb, etc.), several image libraries, an XML library, the GnuTLS (transport layer security) library, and zlib for -decompressing text. Only the first three packages are required (base-devel, -toolchain, xpm-nox); the rest are optional. You can select only part of the -libraries if you don't need them all. +decompressing text. Only the packages up to xpm-nox are required; the rest +are optional. You can select only part of the libraries if you don't need +them all. + +** Check your MSYS2 fstab file + +Assuming that MSYS2 is installed in c:\msys64, make sure that your fstab file +(c:\msys64\etc\fstab) file contains the following lines (starting a column 0 +in the fstab file): + + c:/msys64/mingw64/bin /mingw64/bin ntfs binary,noacl 0 0 + c:/msys64/mingw32/bin /mingw32/bin ntfs binary,noacl 0 0 + +Please note that only the first line is needed for 64bit compilation, the +second one is for a complete fstab file w.r.t. 32bit compilation. + +If there is a space in the diectory where MSYS2 is installed, it shall be +replaced by \040. For instance, if MSYS is installed under "C:\Program +Files\msys64" there must be this line: + + + C:/Program\040Files/msys64/mingw64/bin /mingw64/bin ntfs binary,noacl 0 0 + +Anyway, avoiding to have any space in the path is preferable. + +** Configure your MSYS2 PATH variable for application running from an mingw64 console + +When you launch the mingw64.exe console from the c:\msys64, and type + + echo "$PATH" + +You must have /mingw64/bin and /usr/bin in the paths list in this order. + +Otherwise, it means that for some reason your ~/.bashrc file has been edited +to set the PATH from scratch, which is not the standard MSYS configuration. +You will need to exit the MINGW64 console and edit your ~/.bashrc file, where +~ denote c:\msys64\home\%USERNAME%, to have the correct PATH variable from +any of MSYS/MINGW32/MINGW64 consoles, for instance, please make sure that +~/.bashrc contains some statement like this: + + case x$MSYSTEM in + xMINGW64) + PATH="/mingw64/bin:/usr/bin:$PATH" + ;; + xMINGW32) + PATH="/mingw32/bin:/usr/bin:$PATH" + ;; + xMSYS) + PATH="/usr/bin:$PATH" + ;; + esac + +Actually, for the Emacs build only the MINGW64 is useful. There could other +cases for MSYSTEM envvar equal to MSYS or to MINGW32. You now have a complete build environment for Emacs. @@ -126,8 +194,8 @@ Now you're ready to build and install Emacs with autogen, configure, make, and make install. First we need to switch to the MinGW-w64 environment. Exit the MSYS2 BASH -console and run mingw64_shell.bat in the C:\msys64 folder, then cd back to -your Emacs source directory, e.g.: +console and run mingw64.exe in the C:\msys64 folder, then cd back to your +Emacs source directory, e.g.: cd /c/emacs/emacs-26 @@ -202,6 +270,39 @@ You can set any command line options by right clicking on the resulting shortcut, select Properties, then add any options to the Target command, e.g. --debug-init. +* Configure your init file for Emacs to get a findutils windows port + +As far as find is concerned, at this stage you have configured the +MSWindows PATH envvar to have c:\msys64\usr\bin in +it. + +You should have done that in a way that c:\msys64\usr\bin is after +C:\Windows\System32 in the PATH, otherwise the MSYS2 find.exe will be used +instead of the MSWindows find.exe by other MSWindows application and this may +cause some problem in your MSWindows environment --- although nobody has ever +reported such a trouble. + +As far as Emacs is concerned, the lasy way is to use the MSYS2 find utility +despit the PATH envvar by setting in your init file the following (where +c:/msys64 has to be replaced with the directory where MSYS2 is installed): + + (setq find-program "c:/msys64/usr/bin/find.exe") + +Actually, it is better to work a little bit more and use a MSWindows port +rather than the MSYS find. See why here +https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27393 + +For instance this port can be used. + +https://sourceforge.net/projects/ezwinports/files/findutils-4.2.30-5-w64-bin.zip/download + +Then add to your init file lines like these : + + (setq find-program "c:/PATH/TO/FIND/PORT/find.exe") + +where "c:/PATH/TO/FIND/PORT/" is the place where you have installed this find +MSWindows port. + * Credits Thanks to Chris Zheng for the original build outline as used by the --=-=-=--