unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* MinGW build on master fails with Error 127
@ 2022-12-12 15:26 Loreno Heer
  2022-12-12 15:40 ` Eli Zaretskii
  0 siblings, 1 reply; 40+ messages in thread
From: Loreno Heer @ 2022-12-12 15:26 UTC (permalink / raw)
  To: emacs-devel

MinGW build on master fails with Error 127:

> make[3]: Leaving directory '/home/User/src/emacs/admin/charsets'
> rm -f bootstrap-emacs.pdmp
> ./temacs --batch  -l loadup --temacs=pbootstrap \
>         --bin-dest /home/User/emacs-master-x86_64-full/bin/ --eln-dest /home/User/emacs-master-x86_64-full/lib/emacs/30.0.50/
> make[2]: *** [Makefile:915: bootstrap-emacs.pdmp] Error 127
> make[2]: Leaving directory '/home/User/src/emacs/src'
> make[1]: *** [Makefile:544: src] Error 2
> make[1]: Leaving directory '/home/User/src/emacs'
> make[1]: Entering directory '/home/User/src/emacs'
> ***
> *** "make all" failed with exit status 2.
> ***
> *** You could try to:
> *** - run "make bootstrap", which might fix the problem
> *** - run "make V=1", which displays the full commands invoked by make,
> ***   to further investigate the problem
> ***
> make[1]: *** [Makefile:414: advice-on-failure] Error 2
> make[1]: Leaving directory '/home/User/src/emacs'
> make: *** [Makefile:370: all] Error 2


I already tried make bootstrap and
git reset --hard and git clean -dxf
with a new build. Still fails.





^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-12 15:26 MinGW build on master fails with Error 127 Loreno Heer
@ 2022-12-12 15:40 ` Eli Zaretskii
  2022-12-12 15:44   ` Loreno Heer
  0 siblings, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-12 15:40 UTC (permalink / raw)
  To: Loreno Heer; +Cc: emacs-devel

> From: Loreno Heer <helohe@bluewin.ch>
> Date: Mon, 12 Dec 2022 16:26:44 +0100
> 
> MinGW build on master fails with Error 127:
> 
> > make[3]: Leaving directory '/home/User/src/emacs/admin/charsets'
> > rm -f bootstrap-emacs.pdmp
> > ./temacs --batch  -l loadup --temacs=pbootstrap \
> >         --bin-dest /home/User/emacs-master-x86_64-full/bin/ --eln-dest /home/User/emacs-master-x86_64-full/lib/emacs/30.0.50/
> > make[2]: *** [Makefile:915: bootstrap-emacs.pdmp] Error 127

AFAIK, "error 127" means "command not found".  Do you have temacs.exe
in the src directory?  Did you see any other warnings or errors during
the build?

Anyway, it doesn't fail here.

When was the last time the build fro master worked for you, and what
changed on your system since then?  Some libraries or the compiler got
updated, perhaps?



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-12 15:40 ` Eli Zaretskii
@ 2022-12-12 15:44   ` Loreno Heer
  2022-12-12 15:56     ` Eli Zaretskii
  0 siblings, 1 reply; 40+ messages in thread
From: Loreno Heer @ 2022-12-12 15:44 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

Yes, temacs is in the src directory. There were some warnings and notes
but no other errors. I just updated mingw and the git repo today. Here
is the full build output:

> $ make NATIVE_FULL_AOT=1 -j$(nproc)                                                                 make actual-all || make advice-on-failure make-target=all exit-status=$?
> make[1]: Entering directory '/home/User/src/emacs'
> make -C lib all
> make -C doc/lispref info
> make[2]: Entering directory '/home/User/src/emacs/doc/lispref'
> /usr/bin/mkdir -p ../../info
>   GEN      ../../info/elisp.info
> make[2]: Entering directory '/home/User/src/emacs/lib'
>   GEN      alloca.h
>   GEN      byteswap.h
>   GEN      errno.h
>   GEN      execinfo.h
>   GEN      getopt.h
>   GEN      getopt-cdefs.h
>   GEN      malloc/dynarray.gl.h
>   GEN      malloc/dynarray-skeleton.gl.h
>   GEN      ieee754.h
>   GEN      limits.h
>   GEN      stdckdint.h
>   GEN      stdint.h
>   GEN      string.h
>   GEN      sys/random.h
>   GEN      time.h
>   CC       fingerprint.o
>   CC       acl_entries.o
>   CC       memmem.o
>   CC       mktime.o
>   CC       binary-io.o
>   CC       c-ctype.o
>   CC       c-strcasecmp.o
>   CC       c-strncasecmp.o
>   CC       close-stream.o
>   CC       count-leading-zeros.o
>   CC       count-one-bits.o
>   CC       count-trailing-zeros.o
>   CC       md5-stream.o
>   CC       md5.o
>   CC       sha1.o
>   CC       sha256.o
>   CC       sha512.o
>   CC       dtoastr.o
>   CC       dtotimespec.o
>   CC       execinfo.o
>   CC       filemode.o
>   CC       filevercmp.o
>   CC       fpending.o
>   CC       getopt.o
>   CC       getopt1.o
>   CC       getrandom.o
>   CC       gettime.o
>   CC       gettimeofday.o
>   CC       malloc/dynarray_at_failure.o
> gettimeofday.c: In function 'gettimeofday':
> gettimeofday.c:101:42: warning: the comparison will always evaluate as 'true' for the address of 'GetSystemTimePreciseAsFileTime' will never be NULL [-Waddress]
>   101 |   if (GetSystemTimePreciseAsFileTimeFunc != NULL)
>       |                                          ^~
> In file included from C:/msys64/mingw64/include/winbase.h:36,
>                  from C:/msys64/mingw64/include/windows.h:70,
>                  from gettimeofday.c:29:
> C:/msys64/mingw64/include/sysinfoapi.h:63:26: note: 'GetSystemTimePreciseAsFileTime' declared here
>    63 |   WINBASEAPI VOID WINAPI GetSystemTimePreciseAsFileTime (LPFILETIME lpSystemTimeAsFileTime);
>       |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>   CC       malloc/dynarray_emplace_enlarge.o
>   CC       malloc/dynarray_finalize.o
>   CC       malloc/dynarray_resize.o
>   CC       malloc/dynarray_resize_clear.o
>   CC       memrchr.o
>   CC       mkostemp.o
>   CC       nstrftime.o
>   CC       qcopy-acl.o
>   CC       regex.o
>   CC       sig2str.o
>   CC       sigdescr_np.o
>   CC       stat-time.o
>   CC       stpcpy.o
>   CC       tempname.o
>   CC       time_r.o
>   CC       time_rz.o
>   CC       timegm.o
>   CC       timespec.o
>   CC       timespec-add.o
>   CC       timespec-sub.o
>   CC       u64.o
>   AR       libgnu.a
> make[2]: Leaving directory '/home/User/src/emacs/lib'
> make -C doc/lispintro info
> make[2]: Entering directory '/home/User/src/emacs/doc/lispintro'
>   GEN      ../../info/eintr.info
> make[2]: Leaving directory '/home/User/src/emacs/doc/lispintro'
> make -C doc/emacs info
>   GEN      info/dir
> make[2]: Entering directory '/home/User/src/emacs/doc/emacs'
>   GEN      ../../info/emacs.info
> make[2]: Leaving directory '/home/User/src/emacs/doc/lispref'
> make -C nt all
> make[2]: Entering directory '/home/User/src/emacs/nt'
>   RC       emacs.res
>   CCLD     addpm.exe
>   CCLD     cmdproxy.exe
> make[2]: Leaving directory '/home/User/src/emacs/doc/emacs'
>   CCLD     ddeclient.exe
>   CCLD     runemacs.exe
> make[2]: Leaving directory '/home/User/src/emacs/nt'
> make -C lib-src all
> make[2]: Entering directory '/home/User/src/emacs/lib-src'
>   CC       ntlib.o
>   RC       emacsclient.res
>   CC       pop.o
>   CCLD     etags.exe
>   CCLD     ctags.exe
>   CCLD     emacsclient.exe
>   CCLD     emacsclientw.exe
>   CCLD     ebrowse.exe
>   CCLD     hexl.exe
>   CCLD     movemail.exe
>   CCLD     make-docfile.exe
>   CCLD     make-fingerprint.exe
> make[2]: Leaving directory '/home/User/src/emacs/lib-src'
> make -C src BIN_DESTDIR=''/mingw64/bin/'' \
>          ELN_DESTDIR='/mingw64/lib/emacs/30.0.50/' all
> make[2]: Entering directory '/home/User/src/emacs/src'
>   GEN      lisp.mk
>   GEN      globals.h
>   GEN      buildobj.h
> make -C ../nt ../src/emacs.res
> make[3]: Entering directory '/home/User/src/emacs/nt'
>   RC       ../src/emacs.res
> make[3]: Leaving directory '/home/User/src/emacs/nt'
> make -C ../admin/charsets all
> make[3]: Entering directory '/home/User/src/emacs/admin/charsets'
>   GEN      ../../etc/charsets/8859-2.map
>   GEN      ../../etc/charsets/8859-3.map
>   GEN      ../../etc/charsets/8859-4.map
>   GEN      ../../etc/charsets/8859-5.map
>   GEN      ../../etc/charsets/8859-6.map
>   GEN      ../../etc/charsets/8859-7.map
>   GEN      ../../etc/charsets/8859-8.map
>   GEN      ../../etc/charsets/8859-9.map
>   GEN      ../../etc/charsets/8859-10.map
>   GEN      ../../etc/charsets/8859-11.map
>   GEN      ../../etc/charsets/8859-13.map
>   GEN      ../../etc/charsets/8859-14.map
>   GEN      ../../etc/charsets/8859-15.map
> make -C ../admin/unidata charscript.el
> make[3]: Entering directory '/home/User/src/emacs/admin/unidata'
>   GEN      ../../etc/charsets/8859-16.map
>   GEN      ../../lisp/international/charscript.el
> make[3]: Leaving directory '/home/User/src/emacs/admin/unidata'
> make -C ../admin/unidata emoji-zwj.el
> make[3]: Entering directory '/home/User/src/emacs/admin/unidata'
>   GEN      ../../etc/charsets/IBM037.map
>   GEN      ../../lisp/international/emoji-zwj.el
> make[3]: Leaving directory '/home/User/src/emacs/admin/unidata'
> make -C ../admin/charsets cp51932.el
> make[3]: Entering directory '/home/User/src/emacs/admin/charsets'
>   GEN      ../../etc/charsets/CP932-2BYTE.map
>   GEN      ../../etc/charsets/IBM038.map
>   GEN      ../../lisp/international/cp51932.el
>   GEN      ../../etc/charsets/IBM256.map
> make[3]: Leaving directory '/home/User/src/emacs/admin/charsets'
>   GEN      ../../etc/charsets/IBM273.map
>   GEN      ../../etc/charsets/IBM274.map
> make -C ../admin/charsets eucjp-ms.el
> make[3]: Entering directory '/home/User/src/emacs/admin/charsets'
>   GEN      ../../lisp/international/eucjp-ms.el
> make[3]: Leaving directory '/home/User/src/emacs/admin/charsets'
>   GEN      ../../etc/charsets/IBM275.map
>   GEN      ../../etc/charsets/IBM277.map
>   GEN      ../../etc/charsets/IBM278.map
>   CC       firstfile.o
>   GEN      ../../etc/charsets/IBM280.map
>   CC       dispnew.o
>   GEN      ../../etc/charsets/IBM281.map
>   GEN      ../../etc/charsets/IBM284.map
>   CC       frame.o
>   GEN      ../../etc/charsets/IBM285.map
>   GEN      ../../etc/charsets/IBM290.map
>   GEN      ../../etc/charsets/IBM297.map
>   GEN      ../../etc/charsets/IBM420.map
>   GEN      ../../etc/charsets/IBM423.map
>   GEN      ../../etc/charsets/IBM424.map
>   GEN      ../../etc/charsets/IBM437.map
>   GEN      ../../etc/charsets/IBM500.map
>   CC       scroll.o
>   GEN      ../../etc/charsets/IBM850.map
>   GEN      ../../etc/charsets/IBM851.map
>   GEN      ../../etc/charsets/IBM852.map
>   GEN      ../../etc/charsets/IBM855.map
>   GEN      ../../etc/charsets/IBM856.map
>   GEN      ../../etc/charsets/IBM857.map
>   GEN      ../../etc/charsets/IBM860.map
>   GEN      ../../etc/charsets/IBM861.map
>   GEN      ../../etc/charsets/IBM862.map
>   GEN      ../../etc/charsets/IBM863.map
>   GEN      ../../etc/charsets/IBM864.map
>   GEN      ../../etc/charsets/IBM865.map
>   CC       xdisp.o
>   GEN      ../../etc/charsets/IBM866.map
>   GEN      ../../etc/charsets/IBM868.map
>   GEN      ../../etc/charsets/IBM869.map
>   GEN      ../../etc/charsets/IBM870.map
>   GEN      ../../etc/charsets/IBM871.map
>   GEN      ../../etc/charsets/IBM874.map
>   CC       menu.o
>   GEN      ../../etc/charsets/IBM875.map
>   GEN      ../../etc/charsets/IBM880.map
>   GEN      ../../etc/charsets/IBM891.map
>   GEN      ../../etc/charsets/IBM903.map
>   GEN      ../../etc/charsets/IBM904.map
>   GEN      ../../etc/charsets/IBM905.map
>   GEN      ../../etc/charsets/IBM918.map
>   GEN      ../../etc/charsets/IBM1004.map
>   GEN      ../../etc/charsets/IBM1026.map
>   GEN      ../../etc/charsets/IBM1047.map
>   GEN      ../../etc/charsets/CP737.map
>   GEN      ../../etc/charsets/CP775.map
>   GEN      ../../etc/charsets/CP1125.map
>   GEN      ../../etc/charsets/CP1250.map
>   GEN      ../../etc/charsets/CP1251.map
>   GEN      ../../etc/charsets/CP1252.map
>   GEN      ../../etc/charsets/CP1253.map
>   GEN      ../../etc/charsets/CP1254.map
>   GEN      ../../etc/charsets/CP1255.map
>   GEN      ../../etc/charsets/CP1256.map
>   GEN      ../../etc/charsets/CP1257.map
>   GEN      ../../etc/charsets/CP1258.map
>   GEN      ../../etc/charsets/CP10007.map
>   GEN      ../../etc/charsets/CP720.map
>   GEN      ../../etc/charsets/CP858.map
>   GEN      ../../etc/charsets/GB2312.map
>   GEN      ../../etc/charsets/GBK.map
>   GEN      ../../etc/charsets/GB180302.map
>   GEN      ../../etc/charsets/BIG5.map
>   GEN      ../../etc/charsets/BIG5-HKSCS.map
>   GEN      ../../etc/charsets/CNS-1.map
>   GEN      ../../etc/charsets/CNS-2.map
>   GEN      ../../etc/charsets/CNS-3.map
>   GEN      ../../etc/charsets/CNS-4.map
>   GEN      ../../etc/charsets/CNS-5.map
>   GEN      ../../etc/charsets/CNS-6.map
>   GEN      ../../etc/charsets/CNS-7.map
>   GEN      ../../etc/charsets/CNS-F.map
>   GEN      ../../etc/charsets/JISX0201.map
>   GEN      ../../etc/charsets/JISX0208.map
>   GEN      ../../etc/charsets/JISX0212.map
>   GEN      ../../etc/charsets/JISX2132.map
>   GEN      ../../etc/charsets/JISC6226.map
>   GEN      ../../etc/charsets/JISX213A.map
>   GEN      ../../etc/charsets/KSC5601.map
>   GEN      ../../etc/charsets/KSC5636.map
>   GEN      ../../etc/charsets/JOHAB.map
>   GEN      ../../etc/charsets/KOI-8.map
>   GEN      ../../etc/charsets/KOI8-R.map
>   GEN      ../../etc/charsets/KOI8-U.map
>   GEN      ../../etc/charsets/KOI8-T.map
>   CC       window.o
>   GEN      ../../etc/charsets/ALTERNATIVNYJ.map
>   GEN      ../../etc/charsets/MIK.map
>   GEN      ../../etc/charsets/PTCP154.map
>   GEN      ../../etc/charsets/TIS-620.map
>   GEN      ../../etc/charsets/VISCII.map
>   GEN      ../../etc/charsets/VSCII.map
>   GEN      ../../etc/charsets/VSCII-2.map
>   CC       charset.o
>   GEN      ../../etc/charsets/KA-PS.map
>   GEN      ../../etc/charsets/KA-ACADEMY.map
>   GEN      ../../etc/charsets/HP-ROMAN8.map
>   GEN      ../../etc/charsets/NEXTSTEP.map
>   GEN      ../../etc/charsets/MACINTOSH.map
>   GEN      ../../etc/charsets/EBCDICUK.map
>   GEN      ../../etc/charsets/EBCDICUS.map
>   GEN      ../../etc/charsets/stdenc.map
>   GEN      ../../etc/charsets/symbol.map
>   GEN      ../../etc/charsets/CP949-2BYTE.map
>   GEN      ../../etc/charsets/BIG5-1.map
>   GEN      ../../etc/charsets/BIG5-2.map
>   GEN      ../../etc/charsets/MULE-ethiopic.map
>   GEN      ../../etc/charsets/MULE-ipa.map
>   GEN      ../../etc/charsets/MULE-is13194.map
>   GEN      ../../etc/charsets/MULE-sisheng.map
>   GEN      ../../etc/charsets/MULE-tibetan.map
>   GEN      ../../etc/charsets/MULE-lviscii.map
>   GEN      ../../etc/charsets/MULE-uviscii.map
>   GEN      ../../etc/charsets/GB180304.map
>   GEN      ../../etc/charsets/JISX2131.map
>   CC       coding.o
>   GEN      charsets.stamp
> make[3]: Leaving directory '/home/User/src/emacs/admin/charsets'
>   CC       category.o
>   CC       ccl.o
>   CC       character.o
>   CC       chartab.o
>   CC       bidi.o
>   CC       term.o
>   CC       terminal.o
>   CC       xfaces.o
>   CC       emacs.o
>   CC       keyboard.o
>   CC       macros.o
>   CC       keymap.o
>   CC       sysdep.o
>   CC       bignum.o
>   CC       buffer.o
>   CC       filelock.o
>   CC       insdel.o
>   CC       marker.o
>   CC       minibuf.o
>   CC       fileio.o
>   CC       dired.o
>   CC       cmds.o
>   CC       casetab.o
>   CC       casefiddle.o
>   CC       indent.o
>   CC       search.o
>   CC       regex-emacs.o
>   CC       undo.o
>   CC       alloc.o
>   CC       pdumper.o
>   CC       data.o
>   CC       doc.o
>   CC       editfns.o
>   CC       callint.o
>   CC       eval.o
>   CC       floatfns.o
>   CC       fns.o
>   CC       sort.o
>   CC       font.o
>   CC       print.o
>   CC       lread.o
>   CC       emacs-module.o
>   CC       syntax.o
>   CC       bytecode.o
>   CC       comp.o
>   CC       dynlib.o
>   CC       process.o
>   CC       gnutls.o
>   CC       callproc.o
>   CC       region-cache.o
> In file included from process.c:33:
> In function 'SDATA',
>     inlined from 'SSDATA' at lisp.h:1678:19,
>     inlined from 'create_process' at process.c:2254:40,
>     inlined from 'Fmake_process' at process.c:2059:7:
> lisp.h:1672:31: warning: array subscript 0 is outside array bounds of 'char[]' [-Warray-bounds]
>  1672 |   return XSTRING (string)->u.s.data;
>       |          ~~~~~~~~~~~~~~~~~~~~~^~~~~
> lisp.h:1672:31: warning: null pointer dereference [-Wnull-dereference]
>   CC       sound.o
>   CC       timefns.o
>   CC       atimer.o
>   CC       doprnt.o
> In file included from ./conf_post.h:38,
>                  from ./config.h:3000,
>                  from timefns.c:20:
> timefns.c: In function 'Fcurrent_cpu_time':
> C:/msys64/home/User/src/emacs/nt/inc/ms-w32.h:298:17: warning: implicit declaration of function 'sys_clock'; did you mean 'sys_close'? [-Wimplicit-function-declaration]
>   298 | #define clock   sys_clock
>       |                 ^~~~~~~~~
> timefns.c:1797:27: note: in expansion of macro 'clock'
>  1797 |   return Fcons (make_int (clock ()), make_int (CLOCKS_PER_SEC));
>       |                           ^~~~~
> C:/msys64/home/User/src/emacs/nt/inc/ms-w32.h:298:17: warning: nested extern declaration of 'sys_clock' [-Wnested-externs]
>   298 | #define clock   sys_clock
>       |                 ^~~~~~~~~
> timefns.c:1797:27: note: in expansion of macro 'clock'
>  1797 |   return Fcons (make_int (clock ()), make_int (CLOCKS_PER_SEC));
>       |                           ^~~~~
>   CC       intervals.o
>   CC       textprop.o
>   CC       composite.o
>   CC       xml.o
>   CC       lcms.o
>   CC       w32notify.o
>   CC       profiler.o
>   CC       decompress.o
>   CC       thread.o
>   CC       systhread.o
>   CC       sqlite.o
>   CC       treesit.o
>   CC       itree.o
>   CC       hbfont.o
>   CC       w32fns.o
>   CC       w32menu.o
>   CC       w32reg.o
>   CC       w32font.o
>   CC       w32term.o
>   CC       w32xfns.o
>   CC       w32select.o
>   CC       w32uniscribe.o
>   CC       w32cygwinx.o
>   CC       w32.o
>   CC       w32console.o
>   CC       w32heap.o
>   CC       w32inevt.o
> w32heap.c: In function 'getrlimit':
> w32heap.c:853:14: warning: 'm' may be used uninitialized [-Wmaybe-uninitialized]
>   853 |         if (!VirtualQuery ((LPCVOID) &m, &m, sizeof m))
>       |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from C:/msys64/mingw64/include/winbase.h:25,
>                  from C:/msys64/mingw64/include/windows.h:70,
>                  from w32common.h:24,
>                  from w32heap.c:54:
> C:/msys64/mingw64/include/memoryapi.h:45:28: note: by argument 1 of type 'LPCVOID' {aka 'const void *'} to 'VirtualQuery' declared here
>    45 |   WINBASEAPI SIZE_T WINAPI VirtualQuery (LPCVOID lpAddress, PMEMORY_BASIC_INFORMATION lpBuffer, SIZE_T dwLength);
>       |                            ^~~~~~~~~~~~
> w32heap.c:844:34: note: 'm' declared here
>   844 |         MEMORY_BASIC_INFORMATION m;
>       |                                  ^
>   CC       w32proc.o
>   CC       w32image.o
>   CC       fontset.o
>   CC       fringe.o
>   CC       image.o
>   CC       json.o
>   CC       tparam.o
>   CC       lastfile.o
>   CCLD     temacs.exe
>   GEN      ../etc/DOC
> /usr/bin/mkdir -p ../etc
> make -C ../lisp update-subdirs
> make[3]: Entering directory '/home/User/src/emacs/lisp'
> make[3]: Leaving directory '/home/User/src/emacs/lisp'
> cp -f temacs.exe bootstrap-emacs.exe
> rm -f bootstrap-emacs.pdmp
> ./temacs --batch  -l loadup --temacs=pbootstrap \
>         --bin-dest /mingw64/bin/ --eln-dest /mingw64/lib/emacs/30.0.50/
> make[2]: *** [Makefile:915: bootstrap-emacs.pdmp] Error 127
> make[2]: Leaving directory '/home/User/src/emacs/src'
> make[1]: *** [Makefile:544: src] Error 2
> make[1]: Leaving directory '/home/User/src/emacs'
> make[1]: Entering directory '/home/User/src/emacs'
> ***
> *** "make all" failed with exit status 2.
> ***
> *** You could try to:
> *** - run "make bootstrap", which might fix the problem
> *** - run "make V=1", which displays the full commands invoked by make,
> ***   to further investigate the problem
> ***
> make[1]: *** [Makefile:414: advice-on-failure] Error 2
> make[1]: Leaving directory '/home/User/src/emacs'
> make: *** [Makefile:370: all] Error 2


On 12.12.2022 16:40, Eli Zaretskii wrote:
>> From: Loreno Heer <helohe@bluewin.ch>
>> Date: Mon, 12 Dec 2022 16:26:44 +0100
>>
>> MinGW build on master fails with Error 127:
>>
>>> make[3]: Leaving directory '/home/User/src/emacs/admin/charsets'
>>> rm -f bootstrap-emacs.pdmp
>>> ./temacs --batch  -l loadup --temacs=pbootstrap \
>>>         --bin-dest /home/User/emacs-master-x86_64-full/bin/ --eln-dest /home/User/emacs-master-x86_64-full/lib/emacs/30.0.50/
>>> make[2]: *** [Makefile:915: bootstrap-emacs.pdmp] Error 127
> 
> AFAIK, "error 127" means "command not found".  Do you have temacs.exe
> in the src directory?  Did you see any other warnings or errors during
> the build?
> 
> Anyway, it doesn't fail here.
> 
> When was the last time the build fro master worked for you, and what
> changed on your system since then?  Some libraries or the compiler got
> updated, perhaps?



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-12 15:44   ` Loreno Heer
@ 2022-12-12 15:56     ` Eli Zaretskii
  2022-12-12 16:03       ` Loreno Heer
  0 siblings, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-12 15:56 UTC (permalink / raw)
  To: Loreno Heer; +Cc: emacs-devel

> Date: Mon, 12 Dec 2022 16:44:02 +0100
> Cc: emacs-devel@gnu.org
> From: Loreno Heer <helohe@bluewin.ch>
> 
> Yes, temacs is in the src directory. There were some warnings and notes
> but no other errors. I just updated mingw and the git repo today.

Which parts of MinGW got updated?  Did Make get updated? or Bash?

> Here is the full build output:

I see nothing out of ordinary here, except the final failure.

What happens if you run this command:

 ./temacs --batch -l loadup --temacs=pbootstrap --bin-dest /mingw64/bin/ --eln-dest /mingw64/lib/emacs/30.0.50/

manually, from the MSYS Bash prompt in the src directory -- does it
succeed?



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-12 15:56     ` Eli Zaretskii
@ 2022-12-12 16:03       ` Loreno Heer
  2022-12-12 16:11         ` Eli Zaretskii
  0 siblings, 1 reply; 40+ messages in thread
From: Loreno Heer @ 2022-12-12 16:03 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel



On 12.12.2022 16:56, Eli Zaretskii wrote:
>> Date: Mon, 12 Dec 2022 16:44:02 +0100
>> Cc: emacs-devel@gnu.org
>> From: Loreno Heer <helohe@bluewin.ch>
>>
>> Yes, temacs is in the src directory. There were some warnings and notes
>> but no other errors. I just updated mingw and the git repo today.
> 
> Which parts of MinGW got updated?  Did Make get updated? or Bash?

[2022-12-12T12:35:19+0100] [PACMAN] Running 'pacman -Syuu'
[2022-12-12T12:35:19+0100] [PACMAN] synchronizing package lists
[2022-12-12T12:35:36+0100] [PACMAN] starting core system upgrade
[2022-12-12T12:37:14+0100] [ALPM] transaction started
[2022-12-12T12:37:16+0100] [ALPM] upgraded bash (5.1.016-1 -> 5.2.009-1)
[2022-12-12T12:37:18+0100] [ALPM] upgraded filesystem (2022.01-5 ->
2022.01-7)
[2022-12-12T12:37:18+0100] [ALPM] upgraded mintty (1~3.6.1-2 -> 1~3.6.2-1)
[2022-12-12T12:37:19+0100] [ALPM] upgraded msys2-runtime (3.3.6-2 ->
3.3.6-6)
[2022-12-12T12:37:19+0100] [ALPM] upgraded msys2-runtime-devel (3.3.6-2
-> 3.3.6-6)
[2022-12-12T12:37:19+0100] [ALPM] warning:
/etc/pacman.d/mirrorlist.mingw64 installed as
/etc/pacman.d/mirrorlist.mingw64.pacnew
[2022-12-12T12:37:19+0100] [ALPM] warning:
/etc/pacman.d/mirrorlist.ucrt64 installed as
/etc/pacman.d/mirrorlist.ucrt64.pacnew
[2022-12-12T12:37:19+0100] [ALPM] upgraded pacman-mirrors (20220205-1 ->
20221016-1)
[2022-12-12T12:37:23+0100] [ALPM] upgraded pacman (6.0.1-18 -> 6.0.1-25)
[2022-12-12T12:37:23+0100] [ALPM] transaction completed
[2022-12-12T12:40:50+0100] [PACMAN] Running 'pacman -Syuu'
[2022-12-12T12:40:50+0100] [PACMAN] synchronizing package lists
[2022-12-12T12:41:07+0100] [PACMAN] starting core system upgrade
[2022-12-12T12:41:07+0100] [PACMAN] starting full system upgrade
[2022-12-12T12:53:44+0100] [ALPM] transaction started
[2022-12-12T12:53:44+0100] [ALPM] upgraded libexpat (2.4.9-1 -> 2.5.0-1)
[2022-12-12T12:53:44+0100] [ALPM] upgraded libffi (3.4.3-1 -> 3.4.4-1)
[2022-12-12T12:53:44+0100] [ALPM] upgraded liblzma (5.2.7-1 -> 5.2.9-1)
[2022-12-12T12:53:44+0100] [ALPM] upgraded zlib (1.2.12-2 -> 1.2.13-1)
[2022-12-12T12:53:44+0100] [ALPM] upgraded libopenssl (1.1.1.q-1 ->
1.1.1.s-1)
[2022-12-12T12:53:44+0100] [ALPM] upgraded libreadline (8.1.002-2 ->
8.2.001-1)
[2022-12-12T12:53:53+0100] [ALPM] upgraded tcl (8.6.10-1 -> 8.6.12-1)
[2022-12-12T12:53:53+0100] [ALPM] upgraded libsqlite (3.39.4-1 -> 3.40.0-1)
[2022-12-12T12:54:43+0100] [ALPM] upgraded python (3.10.6-1 -> 3.10.9-1)
[2022-12-12T12:54:51+0100] [ALPM] upgraded coreutils (8.32-4 -> 8.32-5)
[2022-12-12T12:54:51+0100] [ALPM] upgraded libxml2 (2.10.2-1 -> 2.10.3-2)
[2022-12-12T12:54:53+0100] [ALPM] upgraded asciidoc (9.1.1-2 -> 10.2.0-1)
[2022-12-12T12:55:03+0100] [ALPM] upgraded binutils (2.37-5 -> 2.39-2)
[2022-12-12T12:55:10+0100] [ALPM] upgraded bison (3.8.2-3 -> 3.8.2-4)
[2022-12-12T12:55:10+0100] [ALPM] upgraded bsdtar (3.6.1-2 -> 3.6.2-2)
[2022-12-12T12:55:12+0100] [ALPM] upgraded openssl (1.1.1.q-1 -> 1.1.1.s-1)
[2022-12-12T12:55:13+0100] [ALPM] upgraded sed (4.8-3 -> 4.9-1)
[2022-12-12T12:55:13+0100] [ALPM] upgraded libcrypt (2.1-3 -> 2.1-4)
[2022-12-12T12:55:13+0100] [ALPM] upgraded less (608-1 -> 608-2)
[2022-12-12T12:55:13+0100] [ALPM] upgraded info (6.8-4 -> 7.0.1-1)
[2022-12-12T12:55:15+0100] [ALPM] upgraded ca-certificates (20211016-1
-> 20211016-2)
[2022-12-12T12:55:16+0100] [ALPM] upgraded libdb (5.3.28-3 -> 5.3.28-4)
[2022-12-12T12:55:17+0100] [ALPM] upgraded libedit (20210910_3.1-1 ->
20210910_3.1-2)
[2022-12-12T12:55:17+0100] [ALPM] upgraded heimdal-libs (7.7.0-3 -> 7.8.0-2)
[2022-12-12T12:55:18+0100] [ALPM] upgraded libunistring (1.0-1 -> 1.1-2)
[2022-12-12T12:55:18+0100] [ALPM] upgraded libidn2 (2.3.3-1 -> 2.3.4-2)
[2022-12-12T12:55:19+0100] [ALPM] upgraded libnghttp2 (1.50.0-1 -> 1.51.0-1)
[2022-12-12T12:55:19+0100] [ALPM] upgraded libpsl (0.21.1-4 -> 0.21.1-5)
[2022-12-12T12:55:20+0100] [ALPM] upgraded libssh2 (1.10.0-1 -> 1.10.0-2)
[2022-12-12T12:55:20+0100] [ALPM] upgraded libcurl (7.85.0-2 -> 7.86.0-1)
[2022-12-12T12:55:24+0100] [ALPM] upgraded curl (7.85.0-2 -> 7.86.0-1)
[2022-12-12T12:55:24+0100] [ALPM] upgraded db (5.3.28-3 -> 5.3.28-4)
[2022-12-12T12:55:24+0100] [ALPM] upgraded diffstat (1.64-1 -> 1.65-1)
[2022-12-12T12:55:25+0100] [ALPM] upgraded diffutils (3.8-3 -> 3.8-4)
[2022-12-12T12:55:26+0100] [ALPM] upgraded expat (2.4.9-1 -> 2.5.0-1)
[2022-12-12T12:55:27+0100] [ALPM] upgraded flex (2.6.4-2 -> 2.6.4-3)
[2022-12-12T12:55:27+0100] [ALPM] upgraded mpfr (4.1.0.p13-1 -> 4.1.1.p1-1)
[2022-12-12T12:55:29+0100] [ALPM] upgraded gawk (5.1.1-1 -> 5.2.1-1)
[2022-12-12T12:55:49+0100] [ALPM] upgraded libguile (3.0.8-2 -> 3.0.8-3)
[2022-12-12T12:55:50+0100] [ALPM] upgraded gdb (11.1-3 -> 11.1-4)
[2022-12-12T12:55:50+0100] [ALPM] upgraded libargp (20110921-3 ->
20110921-4)
[2022-12-12T12:55:50+0100] [ALPM] upgraded getent (2.18.90-3 -> 2.18.90-4)
[2022-12-12T12:55:52+0100] [ALPM] warning: /etc/nanorc installed as
/etc/nanorc.pacnew
[2022-12-12T12:55:52+0100] [ALPM] upgraded nano (6.4-1 -> 7.0-1)
[2022-12-12T12:56:00+0100] [ALPM] upgraded heimdal (7.7.0-3 -> 7.8.0-2)
[2022-12-12T12:56:01+0100] [ALPM] upgraded openssh (8.9p1-3 -> 9.1p1-1)
[2022-12-12T12:56:32+0100] [ALPM] upgraded perl (5.32.1-2 -> 5.36.0-1)
[2022-12-12T12:56:33+0100] [ALPM] upgraded perl-Clone (0.45-2 -> 0.45-3)
[2022-12-12T12:56:37+0100] [ALPM] upgraded perl-URI (5.10-1 -> 5.16-1)
[2022-12-12T12:56:38+0100] [ALPM] upgraded perl-HTTP-Message (6.36-1 ->
6.44-1)
[2022-12-12T12:56:39+0100] [ALPM] upgraded perl-HTML-Parser (3.78-1 ->
3.80-1)
[2022-12-12T12:56:43+0100] [ALPM] upgraded perl-libwww (6.60-1 -> 6.67-1)
[2022-12-12T12:56:49+0100] [ALPM] upgraded perl-MIME-tools (5.509-1 ->
5.510-1)
[2022-12-12T12:56:50+0100] [ALPM] upgraded perl-TermReadKey (2.38-2 ->
2.38-4)
[2022-12-12T12:56:56+0100] [ALPM] upgraded perl-Net-SSLeay (1.92-1 ->
1.92-2)
[2022-12-12T12:56:57+0100] [ALPM] upgraded perl-IO-Socket-SSL (2.075-1
-> 2.077-1)
[2022-12-12T12:57:04+0100] [ALPM] upgraded git (2.38.0-1 -> 2.38.1-1)
[2022-12-12T12:57:07+0100] [ALPM] upgraded glib2 (2.72.2-2 -> 2.74.3-1)
[2022-12-12T12:57:07+0100] [ALPM] upgraded libffi-devel (3.4.3-1 -> 3.4.4-1)
[2022-12-12T12:57:08+0100] [ALPM] installed pcre2-devel (10.40-1)
[2022-12-12T12:57:08+0100] [ALPM] upgraded zlib-devel (1.2.12-2 -> 1.2.13-1)
[2022-12-12T12:57:13+0100] [ALPM] upgraded glib2-devel (2.72.2-2 ->
2.74.3-1)
[2022-12-12T12:57:14+0100] [ALPM] upgraded libgnutls (3.7.8-1 -> 3.7.8-2)
[2022-12-12T12:57:14+0100] [ALPM] upgraded libksba (1.6.1-1 -> 1.6.2-1)
[2022-12-12T12:57:17+0100] [ALPM] upgraded gnupg (2.2.39-1 -> 2.2.40-1)
[2022-12-12T12:57:22+0100] [ALPM-SCRIPTLET] ==> Appending keys from
msys2.gpg...
[2022-12-12T12:57:23+0100] [ALPM-SCRIPTLET] ==> Updating trust database...
[2022-12-12T12:57:23+0100] [ALPM-SCRIPTLET] gpg: no need for a trustdb check
[2022-12-12T12:57:24+0100] [ALPM] upgraded gperf (3.1-4 -> 3.1-5)
[2022-12-12T12:57:24+0100] [ALPM] upgraded libpcre (8.45-1 -> 8.45-3)
[2022-12-12T12:57:25+0100] [ALPM] upgraded grep (1~3.0-3 -> 1~3.0-6)
[2022-12-12T12:57:32+0100] [ALPM] upgraded groff (1.22.4-3 -> 1.22.4-4)
[2022-12-12T12:57:32+0100] [ALPM] upgraded libcrypt-devel (2.1-3 -> 2.1-4)
[2022-12-12T12:57:32+0100] [ALPM] upgraded libedit-devel (20210910_3.1-1
-> 20210910_3.1-2)
[2022-12-12T12:57:33+0100] [ALPM] upgraded libdb-devel (5.3.28-3 ->
5.3.28-4)
[2022-12-12T12:57:33+0100] [ALPM] upgraded libsqlite-devel (3.39.4-1 ->
3.40.0-1)
[2022-12-12T12:57:39+0100] [ALPM] upgraded heimdal-devel (7.7.0-3 ->
7.8.0-2)
[2022-12-12T12:57:41+0100] [ALPM] upgraded perl-Locale-Gettext (1.07-7
-> 1.07-9)
[2022-12-12T12:57:42+0100] [ALPM] upgraded help2man (1.48.5-1 -> 1.49.2-1)
[2022-12-12T12:57:49+0100] [ALPM] upgraded perl-XML-Parser (2.46-3 ->
2.46-4)
[2022-12-12T12:57:49+0100] [ALPM] upgraded intltool (0.51.0-2 -> 0.51.0-3)
[2022-12-12T12:57:52+0100] [ALPM] upgraded irssi (1.2.3-1 -> 1.4.3-1)
[2022-12-12T12:57:52+0100] [ALPM] upgraded libarchive (3.6.1-2 -> 3.6.2-2)
[2022-12-12T12:57:52+0100] [ALPM] upgraded libatomic_ops (7.6.12-1 ->
7.6.14-1)
[2022-12-12T12:57:52+0100] [ALPM] upgraded libidn2-devel (2.3.3-1 ->
2.3.4-2)
[2022-12-12T12:57:52+0100] [ALPM] upgraded libgnutls-devel (3.7.8-1 ->
3.7.8-2)
[2022-12-12T12:57:53+0100] [ALPM] upgraded libltdl (2.4.6-14 -> 2.4.7-3)
[2022-12-12T12:57:53+0100] [ALPM] upgraded libpcre16 (8.45-1 -> 8.45-3)
[2022-12-12T12:57:53+0100] [ALPM] upgraded libpcre32 (8.45-1 -> 8.45-3)
[2022-12-12T12:57:53+0100] [ALPM] upgraded libpcrecpp (8.45-1 -> 8.45-3)
[2022-12-12T12:57:53+0100] [ALPM] upgraded libpcreposix (8.45-1 -> 8.45-3)
[2022-12-12T12:57:53+0100] [ALPM] upgraded libreadline-devel (8.1.002-2
-> 8.2.001-1)
[2022-12-12T12:57:54+0100] [ALPM] upgraded libtool (2.4.6-14 -> 2.4.7-3)
[2022-12-12T12:57:54+0100] [ALPM] upgraded libunrar (6.1.4-1 -> 6.2.2-1)
[2022-12-12T12:57:54+0100] [ALPM] upgraded libunrar-devel (6.1.4-1 ->
6.2.2-1)
[2022-12-12T12:57:55+0100] [ALPM] upgraded libutil-linux (2.35.2-1 ->
2.35.2-3)
[2022-12-12T12:57:55+0100] [ALPM] upgraded libutil-linux-devel (2.35.2-1
-> 2.35.2-3)
[2022-12-12T12:57:57+0100] [ALPM] upgraded libxml2-python (2.10.2-1 ->
2.10.3-2)
[2022-12-12T12:57:58+0100] [ALPM] upgraded make (4.3-3 -> 4.4-1)
[2022-12-12T12:57:58+0100] [ALPM] upgraded man-db (2.10.2-2 -> 2.10.2-3)
[2022-12-12T12:57:59+0100] [ALPM] upgraded ninja (1.11.0-1 -> 1.11.1-1)
[2022-12-12T12:58:10+0100] [ALPM] upgraded meson (0.63.1-1 -> 0.64.1-1)
[2022-12-12T12:58:10+0100] [ALPM] upgraded mingw-w64-x86_64-mpfr
(4.1.0.p13-1 -> 4.1.1.p1-1)
[2022-12-12T12:58:10+0100] [ALPM] upgraded mingw-w64-x86_64-mpc (1.2.1-1
-> 1.3.0-1)
[2022-12-12T12:58:11+0100] [ALPM] upgraded
mingw-w64-x86_64-libwinpthread-git (10.0.0.r113.g57fd0b77a-1 ->
10.0.0.r157.gd295924f0-1)
[2022-12-12T12:58:11+0100] [ALPM] upgraded mingw-w64-x86_64-gcc-libs
(12.2.0-4 -> 12.2.0-6)
[2022-12-12T12:58:15+0100] [ALPM] upgraded
mingw-w64-x86_64-vulkan-headers (1.3.231-1 -> 1.3.237-1)
[2022-12-12T12:58:16+0100] [ALPM] upgraded
mingw-w64-x86_64-vulkan-loader (1.3.231-1 -> 1.3.237-1)
[2022-12-12T12:58:26+0100] [ALPM] upgraded mingw-w64-x86_64-SDL2
(2.24.1-1 -> 2.26.1-1)
[2022-12-12T12:58:27+0100] [ALPM] upgraded mingw-w64-x86_64-zlib
(1.2.13-1 -> 1.2.13-2)
[2022-12-12T12:58:30+0100] [ALPM] upgraded mingw-w64-x86_64-pcre2
(10.40-1 -> 10.41-1)
[2022-12-12T12:58:30+0100] [ALPM] upgraded mingw-w64-x86_64-libffi
(3.4.3-1 -> 3.4.4-1)
[2022-12-12T12:58:31+0100] [ALPM] upgraded mingw-w64-x86_64-expat
(2.4.9-1 -> 2.5.0-1)
[2022-12-12T12:59:19+0100] [ALPM] upgraded mingw-w64-x86_64-ncurses
(6.3-5 -> 6.3-6)
[2022-12-12T13:00:20+0100] [ALPM] upgraded mingw-w64-x86_64-openssl
(1.1.1.q-1 -> 1.1.1.s-1)
[2022-12-12T13:00:21+0100] [ALPM] upgraded mingw-w64-x86_64-readline
(8.1.002-2 -> 8.2.001-5)
[2022-12-12T13:00:29+0100] [ALPM] upgraded mingw-w64-x86_64-sqlite3
(3.39.2-1 -> 3.40.0-1)
[2022-12-12T13:00:40+0100] [ALPM] upgraded mingw-w64-x86_64-xz (5.2.7-1
-> 5.2.9-1)
[2022-12-12T13:00:58+0100] [ALPM] upgraded mingw-w64-x86_64-tzdata
(2022b-1 -> 2022g-1)
[2022-12-12T13:03:19+0100] [ALPM] upgraded mingw-w64-x86_64-python
(3.10.8-1 -> 3.10.9-1)
[2022-12-12T13:03:41+0100] [ALPM] upgraded mingw-w64-x86_64-glib2
(2.74.0-1 -> 2.74.3-1)
[2022-12-12T13:03:43+0100] [ALPM] upgraded mingw-w64-x86_64-libpng
(1.6.38-1 -> 1.6.39-1)
[2022-12-12T13:03:45+0100] [ALPM] upgraded mingw-w64-x86_64-libdeflate
(1.14-1 -> 1.15-1)
[2022-12-12T13:04:13+0100] [ALPM] upgraded mingw-w64-x86_64-gdk-pixbuf2
(2.42.9-1 -> 2.42.10-1)
[2022-12-12T13:04:14+0100] [ALPM] upgraded mingw-w64-x86_64-harfbuzz
(5.3.0-1 -> 5.3.1-2)
[2022-12-12T13:04:15+0100] [ALPM] upgraded mingw-w64-x86_64-fontconfig
(2.14.0-1 -> 2.14.1-1)
[2022-12-12T13:04:40+0100] [ALPM-SCRIPTLET] updating font cache... done.
[2022-12-12T13:04:41+0100] [ALPM] upgraded mingw-w64-x86_64-pixman
(0.40.0-2 -> 0.42.2-1)
[2022-12-12T13:04:41+0100] [ALPM] upgraded mingw-w64-x86_64-pango
(1.50.11-1 -> 1.50.12-1)
[2022-12-12T13:04:42+0100] [ALPM] upgraded mingw-w64-x86_64-libxml2
(2.10.2-4 -> 2.10.3-1)
[2022-12-12T13:04:43+0100] [ALPM] upgraded mingw-w64-x86_64-librsvg
(2.54.4-2 -> 2.55.1-2)
[2022-12-12T13:05:14+0100] [ALPM] upgraded
mingw-w64-x86_64-adwaita-icon-theme (42.0-1 -> 43-1)
[2022-12-12T13:06:18+0100] [ALPM] upgraded
mingw-w64-x86_64-arm-none-eabi-gcc (10.1.0-2 -> 12.2.0-1)
[2022-12-12T13:06:38+0100] [ALPM] upgraded mingw-w64-x86_64-avr-binutils
(2.38-3 -> 2.39-1)
[2022-12-12T13:07:06+0100] [ALPM] upgraded mingw-w64-x86_64-avr-gcc
(8.5.0-1 -> 12.2.0-1)
[2022-12-12T13:08:44+0100] [ALPM] upgraded mingw-w64-x86_64-llvm
(15.0.2-1 -> 15.0.5-1)
[2022-12-12T13:09:17+0100] [ALPM] upgraded mingw-w64-x86_64-headers-git
(10.0.0.r113.g57fd0b77a-1 -> 10.0.0.r157.gd295924f0-1)
[2022-12-12T13:09:41+0100] [ALPM] upgraded mingw-w64-x86_64-crt-git
(10.0.0.r113.g57fd0b77a-1 -> 10.0.0.r157.gd295924f0-1)
[2022-12-12T13:09:42+0100] [ALPM] upgraded
mingw-w64-x86_64-winpthreads-git (10.0.0.r113.g57fd0b77a-1 ->
10.0.0.r157.gd295924f0-1)
[2022-12-12T13:10:02+0100] [ALPM] upgraded mingw-w64-x86_64-gcc
(12.2.0-4 -> 12.2.0-6)
[2022-12-12T13:10:31+0100] [ALPM] upgraded mingw-w64-x86_64-clang
(15.0.2-1 -> 15.0.5-1)
[2022-12-12T13:10:31+0100] [ALPM] upgraded mingw-w64-x86_64-nghttp2
(1.48.0-1 -> 1.51.0-1)
[2022-12-12T13:10:47+0100] [ALPM] upgraded mingw-w64-x86_64-curl
(7.85.0-1 -> 7.86.0-5)
[2022-12-12T13:10:53+0100] [ALPM] upgraded mingw-w64-x86_64-icu (71.1-1
-> 72.1-1)
[2022-12-12T13:10:54+0100] [ALPM] upgraded mingw-w64-x86_64-nuspell
(5.1.2-1 -> 5.1.2-2)
[2022-12-12T13:10:55+0100] [ALPM] upgraded mingw-w64-x86_64-enchant
(2.3.3-2 -> 2.3.3-3)
[2022-12-12T13:10:55+0100] [ALPM] upgraded mingw-w64-x86_64-fftw
(3.3.10-3 -> 3.3.10-4)
[2022-12-12T13:10:56+0100] [ALPM] upgraded mingw-w64-x86_64-freeglut
(3.4.0-1 -> 3.4.0-2)
[2022-12-12T13:13:15+0100] [ALPM] upgraded mingw-w64-x86_64-gcc-ada
(12.2.0-4 -> 12.2.0-6)
[2022-12-12T13:13:15+0100] [ALPM] upgraded
mingw-w64-x86_64-gcc-libgfortran (12.2.0-4 -> 12.2.0-6)
[2022-12-12T13:13:17+0100] [ALPM] upgraded mingw-w64-x86_64-gcc-fortran
(12.2.0-4 -> 12.2.0-6)
[2022-12-12T13:13:24+0100] [ALPM] upgraded mingw-w64-x86_64-gcc-objc
(12.2.0-4 -> 12.2.0-6)
[2022-12-12T13:13:27+0100] [ALPM] upgraded mingw-w64-x86_64-gdb (12.1-4
-> 12.1-5)
[2022-12-12T13:13:28+0100] [ALPM] upgraded
mingw-w64-x86_64-gdb-multiarch (12.1-4 -> 12.1-5)
[2022-12-12T13:13:37+0100] [ALPM] upgraded mingw-w64-x86_64-gnutls
(3.7.7-2 -> 3.7.8-1)
[2022-12-12T13:13:37+0100] [ALPM] upgraded
mingw-w64-x86_64-gtk-update-icon-cache (3.24.34+156+g812b3930d0-1 ->
3.24.35-1)
[2022-12-12T13:13:50+0100] [ALPM] upgraded mingw-w64-x86_64-gtk3
(3.24.34+156+g812b3930d0-1 -> 3.24.35-1)
[2022-12-12T13:14:02+0100] [ALPM] upgraded mingw-w64-x86_64-jasper
(3.0.6-2 -> 4.0.0-1)
[2022-12-12T13:14:02+0100] [ALPM] upgraded mingw-w64-x86_64-lcms2
(2.13.1-2 -> 2.14-1)
[2022-12-12T13:14:03+0100] [ALPM] upgraded mingw-w64-x86_64-libde265
(1.0.8-3 -> 1.0.9-1)
[2022-12-12T13:14:03+0100] [ALPM] upgraded mingw-w64-x86_64-rav1e
(0.5.1-3 -> 0.6.1-1)
[2022-12-12T13:14:03+0100] [ALPM] installed mingw-w64-x86_64-svt-av1
(1.4.0-1)
[2022-12-12T13:14:04+0100] [ALPM] upgraded mingw-w64-x86_64-libheif
(1.13.0-2 -> 1.14.0-1)
[2022-12-12T13:14:19+0100] [ALPM] upgraded mingw-w64-x86_64-imagemagick
(7.1.0.50-1 -> 7.1.0.52-2)
[2022-12-12T13:14:19+0100] [ALPM] upgraded mingw-w64-x86_64-libgccjit
(12.2.0-4 -> 12.2.0-6)
[2022-12-12T13:14:19+0100] [ALPM] upgraded
mingw-w64-x86_64-libmangle-git (10.0.0.r113.g57fd0b77a-1 ->
10.0.0.r157.gd295924f0-1)
[2022-12-12T13:14:21+0100] [ALPM] upgraded mingw-w64-x86_64-libxslt
(1.1.37-1 -> 1.1.37-2)
[2022-12-12T13:14:21+0100] [ALPM] upgraded mingw-w64-x86_64-make (4.3-1
-> 4.4-2)
[2022-12-12T13:14:30+0100] [ALPM] upgraded
mingw-w64-x86_64-mupdf-libmupdf (1.20.3-1 -> 1.21.0-1)
[2022-12-12T13:14:30+0100] [ALPM] upgraded mingw-w64-x86_64-pdcurses
(4.3.4-1 -> 4.3.5-1)
[2022-12-12T13:14:33+0100] [ALPM] upgraded mingw-w64-x86_64-poppler
(22.07.0-2 -> 22.12.0-1)
[2022-12-12T13:14:47+0100] [ALPM] upgraded
mingw-w64-x86_64-python-setuptools (65.5.0-1 -> 65.6.3-1)
[2022-12-12T13:15:19+0100] [ALPM] upgraded
mingw-w64-x86_64-python-nuitka (1.1.5-1 -> 1.2.6-1)
[2022-12-12T13:15:45+0100] [ALPM] upgraded mingw-w64-x86_64-python-pip
(22.2.2-1 -> 22.3.1-1)
[2022-12-12T13:16:21+0100] [ALPM] upgraded mingw-w64-x86_64-ruby
(3.1.2-3 -> 3.1.3-1)
[2022-12-12T13:16:21+0100] [ALPM] upgraded mingw-w64-x86_64-tools-git
(10.0.0.r113.g57fd0b77a-1 -> 10.0.0.r157.gd295924f0-1)
[2022-12-12T13:16:22+0100] [ALPM] upgraded
mingw-w64-x86_64-winstorecompat-git (10.0.0.r113.g57fd0b77a-1 ->
10.0.0.r157.gd295924f0-1)
[2022-12-12T13:16:34+0100] [ALPM] upgraded mingw-w64-x86_64-xapian-core
(1~1.4.20-2 -> 1~1.4.21-1)
[2022-12-12T13:16:34+0100] [ALPM] upgraded mingw-w64-x86_64-zeromq
(4.3.4-1 -> 4.3.4-2)
[2022-12-12T13:16:34+0100] [ALPM] upgraded mpc (1.2.1-1 -> 1.3.0-1)
[2022-12-12T13:16:34+0100] [ALPM] upgraded msys2-keyring (1~20220623-1
-> 1~20221024-1)
[2022-12-12T13:16:36+0100] [ALPM-SCRIPTLET] ==> Appending keys from
msys2.gpg...
[2022-12-12T13:16:38+0100] [ALPM-SCRIPTLET] ==> Updating trust database...
[2022-12-12T13:16:38+0100] [ALPM-SCRIPTLET] gpg: next trustdb check due
at 2023-04-22
[2022-12-12T13:16:41+0100] [ALPM] upgraded mutt (2.1.4-1 -> 2.2.9-1)
[2022-12-12T13:16:43+0100] [ALPM] upgraded openssl-devel (1.1.1.q-1 ->
1.1.1.s-1)
[2022-12-12T13:16:46+0100] [ALPM] upgraded xz (5.2.7-1 -> 5.2.9-1)
[2022-12-12T13:16:46+0100] [ALPM] upgraded pacman-contrib (1.7.1-1 ->
1.8.0-1)
[2022-12-12T13:16:46+0100] [ALPM] upgraded patch (2.7.6-1 -> 2.7.6-2)
[2022-12-12T13:16:47+0100] [ALPM] upgraded patchutils (0.4.2-2 -> 0.4.2-3)
[2022-12-12T13:16:49+0100] [ALPM] upgraded pcre (8.45-1 -> 8.45-3)
[2022-12-12T13:16:52+0100] [ALPM] upgraded pcre-devel (8.45-1 -> 8.45-3)
[2022-12-12T13:16:54+0100] [ALPM] upgraded perl-YAML-Syck (1.34-1 -> 1.34-2)
[2022-12-12T13:16:54+0100] [ALPM] upgraded pkgconf (1.8.0-1 -> 1.8.0-2)
[2022-12-12T13:16:55+0100] [ALPM] upgraded python-lxml (4.9.0-2 -> 4.9.1-1)
[2022-12-12T13:17:03+0100] [ALPM] upgraded python-setuptools (63.2.0-1
-> 65.6.3-1)
[2022-12-12T13:17:55+0100] [ALPM] upgraded ruby (2.7.6-1 -> 3.1.3-1)
[2022-12-12T13:18:02+0100] [ALPM] upgraded texinfo (6.8-4 -> 7.0.1-1)
[2022-12-12T13:18:02+0100] [ALPM] upgraded texinfo-tex (6.8-4 -> 7.0.1-1)
[2022-12-12T13:18:03+0100] [ALPM] upgraded tig (2.5.6-1 -> 2.5.7-1)
[2022-12-12T13:18:27+0100] [ALPM] upgraded tzcode (2022d-1 -> 2022g-1)
[2022-12-12T13:18:27+0100] [ALPM] upgraded unrar (6.1.4-1 -> 6.2.2-1)
[2022-12-12T13:18:35+0100] [ALPM] upgraded util-linux (2.35.2-1 -> 2.35.2-3)
[2022-12-12T13:18:41+0100] [ALPM] upgraded wget (1.21.3-1 -> 1.21.3-2)
[2022-12-12T13:18:41+0100] [ALPM] upgraded xmlto (0.0.28-3 -> 0.0.28-4)
[2022-12-12T13:18:43+0100] [ALPM] upgraded yelp-xsl (42.0-1 -> 42.1-1)
[2022-12-12T13:18:43+0100] [ALPM] upgraded yelp-tools (42.0-1 -> 42.1-1)
[2022-12-12T13:19:00+0100] [ALPM] upgraded zsh (5.9-1 -> 5.9-2)
[2022-12-12T13:19:00+0100] [ALPM] transaction completed
[2022-12-12T13:19:01+0100] [ALPM] running
'mingw-w64-x86_64-fontconfig.hook'...
[2022-12-12T13:19:02+0100] [ALPM] running
'mingw-w64-x86_64-gdk-pixbuf-query-loaders.hook'...
[2022-12-12T13:19:05+0100] [ALPM] running
'mingw-w64-x86_64-glib-compile-schemas.hook'...
[2022-12-12T13:19:06+0100] [ALPM] running
'mingw-w64-x86_64-gtk-update-icon-cache.hook'...
[2022-12-12T13:19:09+0100] [ALPM] running
'mingw-w64-x86_64-update-mime-database.hook'...
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET]
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET] Note that
'C:/msys64/mingw64/share' is not in the search path
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET] set by the XDG_DATA_HOME and
XDG_DATA_DIRS
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET] environment variables, so
applications may not
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET] be able to find it until you
set them. The
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET] directories currently
searched are:
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET]
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET] -
C:\msys64\home\User\.local\share
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET] - /usr/local/share/
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET] - /usr/share/
[2022-12-12T13:19:25+0100] [ALPM-SCRIPTLET]
[2022-12-12T13:19:25+0100] [ALPM] running 'texinfo-install.hook'...
[2022-12-12T14:23:15+0100] [PACMAN] Running 'pacman -Syuu'
[2022-12-12T14:23:15+0100] [PACMAN] synchronizing package lists
[2022-12-12T14:23:31+0100] [PACMAN] starting core system upgrade
[2022-12-12T14:23:32+0100] [PACMAN] starting full system upgrade


> 
>> Here is the full build output:
> 
> I see nothing out of ordinary here, except the final failure.
> 
> What happens if you run this command:
> 
>  ./temacs --batch -l loadup --temacs=pbootstrap --bin-dest /mingw64/bin/ --eln-dest /mingw64/lib/emacs/30.0.50/
> 
> manually, from the MSYS Bash prompt in the src directory -- does it
> succeed?

User@UserPC MINGW64 ~/src/emacs/src
$ ./temacs --batch -l loadup --temacs=pbootstrap --bin-dest
/mingw64/bin/ --eln-dest /mingw64/lib/emacs/30.0.50/

User@UserPC MINGW64 ~/src/emacs/src
$ echo $?
127




^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-12 16:03       ` Loreno Heer
@ 2022-12-12 16:11         ` Eli Zaretskii
  2022-12-12 16:54           ` Loreno Heer
  2022-12-23 21:45           ` Loreno Heer
  0 siblings, 2 replies; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-12 16:11 UTC (permalink / raw)
  To: Loreno Heer; +Cc: emacs-devel

> Date: Mon, 12 Dec 2022 17:03:32 +0100
> Cc: emacs-devel@gnu.org
> From: Loreno Heer <helohe@bluewin.ch>
> 
> > Which parts of MinGW got updated?  Did Make get updated? or Bash?
> 
> [2022-12-12T12:35:19+0100] [PACMAN] Running 'pacman -Syuu'
> [2022-12-12T12:35:19+0100] [PACMAN] synchronizing package lists
> [2022-12-12T12:35:36+0100] [PACMAN] starting core system upgrade
> [2022-12-12T12:37:14+0100] [ALPM] transaction started
> [2022-12-12T12:37:16+0100] [ALPM] upgraded bash (5.1.016-1 -> 5.2.009-1)
[...]

So basically, lots of stuff was updated including Bash.  Who knows
what that could cause?

Are you able to build the source tarball of Emacs 28.2?

Do you have an anti-virus installed? if so, can you turn it off, or
temporarily disable it, and try again?
> $ ./temacs --batch -l loadup --temacs=pbootstrap --bin-dest
> /mingw64/bin/ --eln-dest /mingw64/lib/emacs/30.0.50/
> 
> User@UserPC MINGW64 ~/src/emacs/src
> $ echo $?
> 127

So it isn't Make, probably.  But it still could be Bash, or some of
the libraries that Emacs links in.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-12 16:11         ` Eli Zaretskii
@ 2022-12-12 16:54           ` Loreno Heer
  2022-12-23 21:45           ` Loreno Heer
  1 sibling, 0 replies; 40+ messages in thread
From: Loreno Heer @ 2022-12-12 16:54 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel



On 12.12.2022 17:11, Eli Zaretskii wrote:
>> Date: Mon, 12 Dec 2022 17:03:32 +0100
>> Cc: emacs-devel@gnu.org
>> From: Loreno Heer <helohe@bluewin.ch>
>>
>>> Which parts of MinGW got updated?  Did Make get updated? or Bash?
>>
>> [2022-12-12T12:35:19+0100] [PACMAN] Running 'pacman -Syuu'
>> [2022-12-12T12:35:19+0100] [PACMAN] synchronizing package lists
>> [2022-12-12T12:35:36+0100] [PACMAN] starting core system upgrade
>> [2022-12-12T12:37:14+0100] [ALPM] transaction started
>> [2022-12-12T12:37:16+0100] [ALPM] upgraded bash (5.1.016-1 -> 5.2.009-1)
> [...]
> 
> So basically, lots of stuff was updated including Bash.  Who knows
> what that could cause?
> 
> Are you able to build the source tarball of Emacs 28.2?

I just tried now, this gives the same error. So most likely something
changed in mingw that breaks the build.
I will see if any update in the next day or so fixes it again.

> 
> Do you have an anti-virus installed? if so, can you turn it off, or
> temporarily disable it, and try again?

I don't use any.

>> $ ./temacs --batch -l loadup --temacs=pbootstrap --bin-dest
>> /mingw64/bin/ --eln-dest /mingw64/lib/emacs/30.0.50/
>>
>> User@UserPC MINGW64 ~/src/emacs/src
>> $ echo $?
>> 127
> 
> So it isn't Make, probably.  But it still could be Bash, or some of
> the libraries that Emacs links in.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-12 16:11         ` Eli Zaretskii
  2022-12-12 16:54           ` Loreno Heer
@ 2022-12-23 21:45           ` Loreno Heer
  2022-12-24  6:36             ` Eli Zaretskii
  1 sibling, 1 reply; 40+ messages in thread
From: Loreno Heer @ 2022-12-23 21:45 UTC (permalink / raw)
  To: emacs-devel; +Cc: emacs-devel

I got it to build by manually setting

#define _WIN32_WINNT 0x0601

in the emacs config.h file.
Not sure why but this variable seems to have the (wrong) value of 0x0603
on my system (Windows 7 ESR). I don't know if this is a variable that
emacs build defines somewhere or the msys build system.

On 12.12.2022 17:11, Eli Zaretskii wrote:
>> Date: Mon, 12 Dec 2022 17:03:32 +0100
>> Cc: emacs-devel@gnu.org
>> From: Loreno Heer <helohe@bluewin.ch>
>>
>>> Which parts of MinGW got updated?  Did Make get updated? or Bash?
>>
>> [2022-12-12T12:35:19+0100] [PACMAN] Running 'pacman -Syuu'
>> [2022-12-12T12:35:19+0100] [PACMAN] synchronizing package lists
>> [2022-12-12T12:35:36+0100] [PACMAN] starting core system upgrade
>> [2022-12-12T12:37:14+0100] [ALPM] transaction started
>> [2022-12-12T12:37:16+0100] [ALPM] upgraded bash (5.1.016-1 -> 5.2.009-1)
> [...]
> 
> So basically, lots of stuff was updated including Bash.  Who knows
> what that could cause?
> 
> Are you able to build the source tarball of Emacs 28.2?
> 
> Do you have an anti-virus installed? if so, can you turn it off, or
> temporarily disable it, and try again?
>> $ ./temacs --batch -l loadup --temacs=pbootstrap --bin-dest
>> /mingw64/bin/ --eln-dest /mingw64/lib/emacs/30.0.50/
>>
>> User@UserPC MINGW64 ~/src/emacs/src
>> $ echo $?
>> 127
> 
> So it isn't Make, probably.  But it still could be Bash, or some of
> the libraries that Emacs links in.
> 
> 





^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-23 21:45           ` Loreno Heer
@ 2022-12-24  6:36             ` Eli Zaretskii
  2022-12-24 14:18               ` Loreno Heer
  0 siblings, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24  6:36 UTC (permalink / raw)
  To: Loreno Heer; +Cc: emacs-devel

> Date: Fri, 23 Dec 2022 22:45:22 +0100
> Cc: emacs-devel@gnu.org
> From: Loreno Heer <helohe@bluewin.ch>
> 
> I got it to build by manually setting
> 
> #define _WIN32_WINNT 0x0601
> 
> in the emacs config.h file.
> Not sure why but this variable seems to have the (wrong) value of 0x0603
> on my system (Windows 7 ESR). I don't know if this is a variable that
> emacs build defines somewhere or the msys build system.

Emacs doesn't set _WIN32_WINNT to this value anywhere.  (And anyway, I
don't see how setting it to a higher value could do any harm, when
0x0601 does work.)

So please take this up with the MinGW64/MSYS2 developers, because it
sounds like some problem with their system headers.  I don't see any
evidence here that there's something wrong in Emacs which causes this
problem.  Especially since it started happening lately, and happens
with older Emacs versions as well, where no changes have been done.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24  6:36             ` Eli Zaretskii
@ 2022-12-24 14:18               ` Loreno Heer
  2022-12-24 14:43                 ` Eli Zaretskii
  0 siblings, 1 reply; 40+ messages in thread
From: Loreno Heer @ 2022-12-24 14:18 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

I did and if I understand it correctly they basically say that they did
some change but it is now up to emacs to change the build behavior:

https://github.com/msys2/MINGW-packages/issues/14573#issuecomment-1364532147

On 24.12.2022 07:36, Eli Zaretskii wrote:
>> Date: Fri, 23 Dec 2022 22:45:22 +0100
>> Cc: emacs-devel@gnu.org
>> From: Loreno Heer <helohe@bluewin.ch>
>>
>> I got it to build by manually setting
>>
>> #define _WIN32_WINNT 0x0601
>>
>> in the emacs config.h file.
>> Not sure why but this variable seems to have the (wrong) value of 0x0603
>> on my system (Windows 7 ESR). I don't know if this is a variable that
>> emacs build defines somewhere or the msys build system.
> 
> Emacs doesn't set _WIN32_WINNT to this value anywhere.  (And anyway, I
> don't see how setting it to a higher value could do any harm, when
> 0x0601 does work.)
> 
> So please take this up with the MinGW64/MSYS2 developers, because it
> sounds like some problem with their system headers.  I don't see any
> evidence here that there's something wrong in Emacs which causes this
> problem.  Especially since it started happening lately, and happens
> with older Emacs versions as well, where no changes have been done.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 14:18               ` Loreno Heer
@ 2022-12-24 14:43                 ` Eli Zaretskii
  2022-12-24 15:11                   ` Loreno Heer
  2022-12-24 15:31                   ` Óscar Fuentes
  0 siblings, 2 replies; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 14:43 UTC (permalink / raw)
  To: Loreno Heer; +Cc: emacs-devel

> Date: Sat, 24 Dec 2022 15:18:02 +0100
> Cc: emacs-devel@gnu.org
> From: Loreno Heer <helohe@bluewin.ch>
> 
> I did and if I understand it correctly they basically say that they did
> some change but it is now up to emacs to change the build behavior:
> 
> https://github.com/msys2/MINGW-packages/issues/14573#issuecomment-1364532147

Are you building Emacs on Windows 7?  If yes, I understand what they
are saying: that MinGW64 no longer supports Windows 7.

If you build on a later version of Windows, then I don't understand
what they are saying:

  As examples mentioned on #14452 illustrate, a package can support
  Win7 fine but if we say to its build system that we target >Win7 the
  resulting binary may be incompatible with Win7. This means in
  practice that Emacs (or any other software) can't rely on using our
  packages as runtime dependencies for supporting Win7.

Emacs will support MS-Windows versions as old as Windows 9X, as long
as the MinGW headers and runtime support those versions.  If your
MinGW supports only Windows versions newer than some version N, then
Emacs cannot magically overcome this limitation, and will also support
only versions of Windows newer than N.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 14:43                 ` Eli Zaretskii
@ 2022-12-24 15:11                   ` Loreno Heer
  2022-12-24 15:44                     ` Eli Zaretskii
  2022-12-24 15:31                   ` Óscar Fuentes
  1 sibling, 1 reply; 40+ messages in thread
From: Loreno Heer @ 2022-12-24 15:11 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel



On 24.12.2022 15:43, Eli Zaretskii wrote:
>> Date: Sat, 24 Dec 2022 15:18:02 +0100
>> Cc: emacs-devel@gnu.org
>> From: Loreno Heer <helohe@bluewin.ch>
>>
>> I did and if I understand it correctly they basically say that they did
>> some change but it is now up to emacs to change the build behavior:
>>
>> https://github.com/msys2/MINGW-packages/issues/14573#issuecomment-1364532147
> 
> Are you building Emacs on Windows 7?  If yes, I understand what they
> are saying: that MinGW64 no longer supports Windows 7.

Yes I am building on Win 7 ESR. But it looks like I have to switch to
linux soon because everyone drops support for it.

I think in theory though their build system still supports win 7 or
older just fine. As long as I set that variable everything builds and
runs just fine.
> 
> If you build on a later version of Windows, then I don't understand
> what they are saying:
> 
>   As examples mentioned on #14452 illustrate, a package can support
>   Win7 fine but if we say to its build system that we target >Win7 the
>   resulting binary may be incompatible with Win7. This means in
>   practice that Emacs (or any other software) can't rely on using our
>   packages as runtime dependencies for supporting Win7.
> 
> Emacs will support MS-Windows versions as old as Windows 9X, as long
> as the MinGW headers and runtime support those versions.  If your
> MinGW supports only Windows versions newer than some version N, then
> Emacs cannot magically overcome this limitation, and will also support
> only versions of Windows newer than N.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 14:43                 ` Eli Zaretskii
  2022-12-24 15:11                   ` Loreno Heer
@ 2022-12-24 15:31                   ` Óscar Fuentes
  2022-12-24 15:50                     ` Eli Zaretskii
  1 sibling, 1 reply; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 15:31 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Loreno Heer, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> Date: Sat, 24 Dec 2022 15:18:02 +0100
>> Cc: emacs-devel@gnu.org
>> From: Loreno Heer <helohe@bluewin.ch>
>> 
>> I did and if I understand it correctly they basically say that they did
>> some change but it is now up to emacs to change the build behavior:
>> 
>> https://github.com/msys2/MINGW-packages/issues/14573#issuecomment-1364532147
>
> Are you building Emacs on Windows 7?  If yes, I understand what they
> are saying: that MinGW64 no longer supports Windows 7.

Please note that MinGW-w64 and MSYS2 (which includes MINGW-packages) are
different projects. MSYS2 builds, packages and distributes MinGW-w64.
MSYS2 decided to bump _WIN32_WINNT in our build scripts, which has
implications for Emacs (see below) but that's independent of what
MinGW-w64 actually, officially supports.

> If you build on a later version of Windows, then I don't understand
> what they are saying:
>
>   As examples mentioned on #14452 illustrate, a package can support
>   Win7 fine but if we say to its build system that we target >Win7 the
>   resulting binary may be incompatible with Win7. This means in
>   practice that Emacs (or any other software) can't rely on using our
>   packages as runtime dependencies for supporting Win7.

I wrote the text you quote above, so I'll explain.

Some packages (including the MinGW-w64 runtime) implement compile-time
conditionals for preferring certain APIs over others depending on the
target OS version. So once we start distributing binary packages built
with the bumped _WIN32_WINNT value, some Emacs dependencies may fail to
run on Windows 7.

Which is basically what you say here:

> Emacs will support MS-Windows versions as old as Windows 9X, as long
> as the MinGW headers and runtime support those versions.  If your
> MinGW supports only Windows versions newer than some version N, then
> Emacs cannot magically overcome this limitation, and will also support
> only versions of Windows newer than N.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 15:11                   ` Loreno Heer
@ 2022-12-24 15:44                     ` Eli Zaretskii
  2022-12-24 22:50                       ` Loreno Heer
  0 siblings, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 15:44 UTC (permalink / raw)
  To: Loreno Heer; +Cc: emacs-devel

> Date: Sat, 24 Dec 2022 16:11:47 +0100
> Cc: emacs-devel@gnu.org
> From: Loreno Heer <helohe@bluewin.ch>
> 
> > Are you building Emacs on Windows 7?  If yes, I understand what they
> > are saying: that MinGW64 no longer supports Windows 7.
> 
> Yes I am building on Win 7 ESR. But it looks like I have to switch to
> linux soon because everyone drops support for it.
> 
> I think in theory though their build system still supports win 7 or
> older just fine. As long as I set that variable everything builds and
> runs just fine.

In general, when the runtime drops support for Windows 7, you cannot
reliably run binaries produced with that runtime on that system.  It
could be sheer luck that you get away during the build process, and
even if you do get away, the produced binary could fail in some weird
ways afterwards.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 15:31                   ` Óscar Fuentes
@ 2022-12-24 15:50                     ` Eli Zaretskii
  2022-12-24 16:14                       ` Óscar Fuentes
  0 siblings, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 15:50 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: helohe, emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: Loreno Heer <helohe@bluewin.ch>,  emacs-devel@gnu.org
> Date: Sat, 24 Dec 2022 16:31:57 +0100
> 
> Please note that MinGW-w64 and MSYS2 (which includes MINGW-packages) are
> different projects. MSYS2 builds, packages and distributes MinGW-w64.
> MSYS2 decided to bump _WIN32_WINNT in our build scripts, which has
> implications for Emacs (see below) but that's independent of what
> MinGW-w64 actually, officially supports.

So what are the details?  Which versions of Windows does MSYS2
support, and which ones does MinGW64 support?  And if MinGW64 is about
to drop Windows versions older than 8.1 soon, when will that happen?

I'm asking because I want to update our documentation with this
information, to avoid other users being surprised by these subtle
issues.

Thanks.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 15:50                     ` Eli Zaretskii
@ 2022-12-24 16:14                       ` Óscar Fuentes
  2022-12-24 16:46                         ` Eli Zaretskii
  2022-12-24 18:49                         ` Eli Zaretskii
  0 siblings, 2 replies; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 16:14 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: helohe, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> Please note that MinGW-w64 and MSYS2 (which includes MINGW-packages) are
>> different projects. MSYS2 builds, packages and distributes MinGW-w64.
>> MSYS2 decided to bump _WIN32_WINNT in our build scripts, which has
>> implications for Emacs (see below) but that's independent of what
>> MinGW-w64 actually, officially supports.
>
> So what are the details?  Which versions of Windows does MSYS2
> support, 

Since about 1 week ago, the minimum requirement is Windows 8.1. Hardware
requirements were also recently upgraded. A CPU from 2007 onwards should
be fine:

https://www.msys2.org/news/#2022-10-18-new-minimum-hardware-requirements-cpus-from-20067

> and which ones does MinGW64 support?

AFAIK nothing changed for MinGW-w64. I don't know about their planning,
though.

> And if MinGW64 is about
> to drop Windows versions older than 8.1 soon, when will that happen?

See above. Please note that Mingw-w64 alone is useless, you need to
configure your toolchain to use it. MSYS2 provides toolchains ready to
use. Plus, requirements such as libwinpthreads, which are also
maintained by Mingw-w64, might have their own requirements (AFAIK
nothing changed yet.)

> I'm asking because I want to update our documentation with this
> information, to avoid other users being surprised by these subtle
> issues.

I would say that for using an MSYS2-based build of Emacs you need
Windows 8.1 at the least. A more future-proof statement is to recommend
looking up that information on the MSYS2 web page.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 16:14                       ` Óscar Fuentes
@ 2022-12-24 16:46                         ` Eli Zaretskii
  2022-12-24 16:58                           ` Óscar Fuentes
  2022-12-24 17:08                           ` Óscar Fuentes
  2022-12-24 18:49                         ` Eli Zaretskii
  1 sibling, 2 replies; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 16:46 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: helohe@bluewin.ch,  emacs-devel@gnu.org
> Date: Sat, 24 Dec 2022 17:14:56 +0100
> 
> > I'm asking because I want to update our documentation with this
> > information, to avoid other users being surprised by these subtle
> > issues.
> 
> I would say that for using an MSYS2-based build of Emacs you need
> Windows 8.1 at the least. A more future-proof statement is to recommend
> looking up that information on the MSYS2 web page.

Thanks.

And as long as I have your attention: what about the switch to UCRT64?
Does Emacs need something in its Makefile's to specify linking against
MSVCRT, even though UCRT64 is the default?  The information at

  https://www.msys2.org/news/#2022-10-29-changing-the-default-environment-from-mingw64-to-ucrt64

doesn't provide any details about that.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 16:46                         ` Eli Zaretskii
@ 2022-12-24 16:58                           ` Óscar Fuentes
  2022-12-24 17:08                           ` Óscar Fuentes
  1 sibling, 0 replies; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 16:58 UTC (permalink / raw)
  To: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

> And as long as I have your attention: what about the switch to UCRT64?
> Does Emacs need something in its Makefile's to specify linking against
> MSVCRT, even though UCRT64 is the default?  The information at
>
>   https://www.msys2.org/news/#2022-10-29-changing-the-default-environment-from-mingw64-to-ucrt64
>
> doesn't provide any details about that.

See

https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-emacs

There is a patch specific for UCRT support. It's quite simple although
the workaround for close_stream doesn't inspire confidence, hints that
there might be subtle differences on the behavior of C runtime
functions.

This is the relevant commit message:

commit 01be90ce74e3b69e7b03ab886d5f4ac59da0f646
Author: Christoph Reiter
Date:   Thu Jun 23 21:34:12 2022 +0200

    emacs: some hacky patches to make it work on ucrt64
    
    for both stdout and stderr fclose fail during atexit as if they
    were already closed. the function in theory has a workaround for that
    in that it will continue if errno is EBADF, but fclose doesn't set that
    on Windows.
    
    This shows at least what is missing/broken if upstream wants to have a look.


Of course the Emacs UCRT build lacks the real-world testing that the
Mingw-w64 one has, so we need to wait for bug reports.




^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 16:46                         ` Eli Zaretskii
  2022-12-24 16:58                           ` Óscar Fuentes
@ 2022-12-24 17:08                           ` Óscar Fuentes
  2022-12-24 17:20                             ` Eli Zaretskii
  1 sibling, 1 reply; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 17:08 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

[Resending because messages posted through gmane take several hours to
appear on the mailing list. Sorry for the duplicate.]

Eli Zaretskii <eliz@gnu.org> writes:

> And as long as I have your attention: what about the switch to UCRT64?
> Does Emacs need something in its Makefile's to specify linking against
> MSVCRT, even though UCRT64 is the default?  The information at
>
>   https://www.msys2.org/news/#2022-10-29-changing-the-default-environment-from-mingw64-to-ucrt64
>
> doesn't provide any details about that.

See

https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-emacs

There is a patch specific for UCRT support. It's quite simple although
the workaround for close_stream doesn't inspire confidence, hints that
there might be subtle differences on the behavior of C runtime
functions.

This is the relevant commit message:

commit 01be90ce74e3b69e7b03ab886d5f4ac59da0f646
Author: Christoph Reiter
Date:   Thu Jun 23 21:34:12 2022 +0200

    emacs: some hacky patches to make it work on ucrt64
    
    for both stdout and stderr fclose fail during atexit as if they
    were already closed. the function in theory has a workaround for that
    in that it will continue if errno is EBADF, but fclose doesn't set that
    on Windows.
    
    This shows at least what is missing/broken if upstream wants to have a look.


Of course the Emacs UCRT build lacks the real-world testing that the
Mingw-w64 one has, so we need to wait for bug reports.

BTW, there is a patch for building with Clang on Windows.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 17:08                           ` Óscar Fuentes
@ 2022-12-24 17:20                             ` Eli Zaretskii
  2022-12-24 17:57                               ` Óscar Fuentes
  2022-12-24 18:03                               ` Óscar Fuentes
  0 siblings, 2 replies; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 17:20 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: emacs-devel@gnu.org
> Date: Sat, 24 Dec 2022 18:08:10 +0100
> 
> > And as long as I have your attention: what about the switch to UCRT64?
> > Does Emacs need something in its Makefile's to specify linking against
> > MSVCRT, even though UCRT64 is the default?  The information at
> >
> >   https://www.msys2.org/news/#2022-10-29-changing-the-default-environment-from-mingw64-to-ucrt64
> >
> > doesn't provide any details about that.
> 
> See
> 
> https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-emacs

There's nothing there regarding the runtime against which Emacs is
being linked.  How does GCC/ld know which runtime to link against?  Up
until now GCC would call the linker with the -lmsvcrt switch, so does
it now use some other switch?  And what can users do to force MinGW64
to link against MSVCRT, if they so wish?

> There is a patch specific for UCRT support. It's quite simple although
> the workaround for close_stream doesn't inspire confidence, hints that
> there might be subtle differences on the behavior of C runtime
> functions.

It's a beginning of a very long journey, to learn about UCRT what
we've invested decades to learn about MSVCRT.  And the patch indeed is
not really acceptable, as it disables useful behavior without a
reasonable explanation.

Are the sources of UCRT available somewhere (as MSVCRT sources were)?



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 17:20                             ` Eli Zaretskii
@ 2022-12-24 17:57                               ` Óscar Fuentes
  2022-12-24 18:09                                 ` Eli Zaretskii
  2022-12-25  0:13                                 ` Po Lu
  2022-12-24 18:03                               ` Óscar Fuentes
  1 sibling, 2 replies; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 17:57 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> > And as long as I have your attention: what about the switch to UCRT64?
>> > Does Emacs need something in its Makefile's to specify linking against
>> > MSVCRT, even though UCRT64 is the default?  The information at
>> >
>> >   https://www.msys2.org/news/#2022-10-29-changing-the-default-environment-from-mingw64-to-ucrt64
>> >
>> > doesn't provide any details about that.
>> 
>> See
>> 
>> https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-emacs
>
> There's nothing there regarding the runtime against which Emacs is
> being linked.  How does GCC/ld know which runtime to link against?  Up
> until now GCC would call the linker with the -lmsvcrt switch, so does
> it now use some other switch?

MSYS2 distributes multiple toolset/c-runtime combinations. Toolsets can
be GNU (gcc, binutils, etc) or Clang, and c-runtime can be either
mingw-w64 or UCRT. For a given combination the toolset is configured to
work with a c-runtime, so it already knows what it needs to do the right
thing. I guess it is possible to override the configuration of a toolset
so to use a different c-runtime, but that's not something that MSYS2
encourage.

> And what can users do to force MinGW64 to link against MSVCRT, if they
> so wish?

The MSYS2 distribution named "MINGW64" already links to MSVCRT, as
always did, and that will not change. Is the UCRT64 distribution the one
that provides a gcc/binutils/everything-else that links to UCRT.

>> There is a patch specific for UCRT support. It's quite simple although
>> the workaround for close_stream doesn't inspire confidence, hints that
>> there might be subtle differences on the behavior of C runtime
>> functions.
>
> It's a beginning of a very long journey, to learn about UCRT what
> we've invested decades to learn about MSVCRT.

AFAIK UCRT should work just fine (TM) as it is not an entirely new C
Runtime, but a vastly updated version of MSVCRT with a new model of
deployment for more robust versioning that allows incremental additions.
I'm sure there are subtle differences and even some intended departure
from behaviors that are deemed undesirable, though.

My experience, both with my own projects and with the packages MSYS2
distributes, indicate that migrating to it is fairly painless, if
noticeable at all.

> And the patch indeed is not really acceptable, as it disables useful
> behavior without a reasonable explanation.

The commit message says "fclose fail during atexit as if they were
already closed" but indeed it doesn't describe a user-visible problem. I
can ask for more details, if you are interested.

> Are the sources of UCRT available somewhere (as MSVCRT sources were)?

They are distributed with Visual Studio. They are missing from a
Community (the gratis version) install that I have around, but maybe I
didn't check the option for installing them.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 17:20                             ` Eli Zaretskii
  2022-12-24 17:57                               ` Óscar Fuentes
@ 2022-12-24 18:03                               ` Óscar Fuentes
  1 sibling, 0 replies; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 18:03 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

> Are the sources of UCRT available somewhere (as MSVCRT sources were)?

This article seems very relevant:

https://learn.microsoft.com/en-us/cpp/porting/upgrade-your-code-to-the-universal-crt?view=msvc-170

At the end there is a link to a list of differences among MSVCRT and
UCRT.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 17:57                               ` Óscar Fuentes
@ 2022-12-24 18:09                                 ` Eli Zaretskii
  2022-12-24 18:56                                   ` Óscar Fuentes
  2022-12-25  0:13                                 ` Po Lu
  1 sibling, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 18:09 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: emacs-devel@gnu.org
> Date: Sat, 24 Dec 2022 18:57:55 +0100
> 
> MSYS2 distributes multiple toolset/c-runtime combinations. Toolsets can
> be GNU (gcc, binutils, etc) or Clang, and c-runtime can be either
> mingw-w64 or UCRT. For a given combination the toolset is configured to
> work with a c-runtime, so it already knows what it needs to do the right
> thing. I guess it is possible to override the configuration of a toolset
> so to use a different c-runtime, but that's not something that MSYS2
> encourage.
> 
> > And what can users do to force MinGW64 to link against MSVCRT, if they
> > so wish?
> 
> The MSYS2 distribution named "MINGW64" already links to MSVCRT, as
> always did, and that will not change. Is the UCRT64 distribution the one
> that provides a gcc/binutils/everything-else that links to UCRT.

So if the user has the UCRT version installed, they will necessarily
link against UCRT64.

Does the wording in nt/INSTALL.W64 guide users to only one of these
two variants (and if so, to which one), or is it generic, and the user
will have to choose when they install MinGW?

> >> There is a patch specific for UCRT support. It's quite simple although
> >> the workaround for close_stream doesn't inspire confidence, hints that
> >> there might be subtle differences on the behavior of C runtime
> >> functions.
> >
> > It's a beginning of a very long journey, to learn about UCRT what
> > we've invested decades to learn about MSVCRT.
> 
> AFAIK UCRT should work just fine (TM) as it is not an entirely new C
> Runtime, but a vastly updated version of MSVCRT with a new model of
> deployment for more robust versioning that allows incremental additions.
> I'm sure there are subtle differences and even some intended departure
> from behaviors that are deemed undesirable, though.

Subtle differences do exist, as that patch demonstrates.

Whether it will be painless for Emacs depends on how much of the
sources of MSVCRT was inherited by UCRT.  There are some quirks in
MSVCRT that took us time to find out and accommodate for, and w32.c
mentions that in several places.

> My experience, both with my own projects and with the packages MSYS2
> distributes, indicate that migrating to it is fairly painless, if
> noticeable at all.

See above: Emacs is quite demanding in this regard, so I'm not as
optimistic as you are, having spent enough hours reading the MSVCRT
sources and documentation.

> > And the patch indeed is not really acceptable, as it disables useful
> > behavior without a reasonable explanation.
> 
> The commit message says "fclose fail during atexit as if they were
> already closed" but indeed it doesn't describe a user-visible problem. I
> can ask for more details, if you are interested.

I am.  And note that the MS documentation shows an example where an
atexit function calls printf, so the standard streams are not really
closed at that time.  Something else is at work here, probably.

> > Are the sources of UCRT available somewhere (as MSVCRT sources were)?
> 
> They are distributed with Visual Studio. They are missing from a
> Community (the gratis version) install that I have around, but maybe I
> didn't check the option for installing them.

IME, being able to examine the sources was invaluable in quickly
resolving some issues.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 16:14                       ` Óscar Fuentes
  2022-12-24 16:46                         ` Eli Zaretskii
@ 2022-12-24 18:49                         ` Eli Zaretskii
  2022-12-24 19:23                           ` Óscar Fuentes
  1 sibling, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 18:49 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: helohe@bluewin.ch,  emacs-devel@gnu.org
> Date: Sat, 24 Dec 2022 17:14:56 +0100
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> Please note that MinGW-w64 and MSYS2 (which includes MINGW-packages) are
> >> different projects. MSYS2 builds, packages and distributes MinGW-w64.
> >> MSYS2 decided to bump _WIN32_WINNT in our build scripts, which has
> >> implications for Emacs (see below) but that's independent of what
> >> MinGW-w64 actually, officially supports.
> >
> > So what are the details?  Which versions of Windows does MSYS2
> > support, 
> 
> Since about 1 week ago, the minimum requirement is Windows 8.1. Hardware
> requirements were also recently upgraded. A CPU from 2007 onwards should
> be fine:
> 
> https://www.msys2.org/news/#2022-10-18-new-minimum-hardware-requirements-cpus-from-20067

And the MinGW64 folks now informed me that MinGW64 switched to
Windows 10 as the default target about a year ago.  See

  https://github.com/msys2/MINGW-packages/issues/14573#issuecomment-1364569522

Which in practice means building with MinGW64 on versions of
MS-Windows older than 10 is no longer safe ore recommended.

I updated the installation instructions and PROBLEMS to that effect.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 18:09                                 ` Eli Zaretskii
@ 2022-12-24 18:56                                   ` Óscar Fuentes
  2022-12-24 19:10                                     ` Eli Zaretskii
  2022-12-24 19:19                                     ` Óscar Fuentes
  0 siblings, 2 replies; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 18:56 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> The MSYS2 distribution named "MINGW64" already links to MSVCRT, as
>> always did, and that will not change. Is the UCRT64 distribution the one
>> that provides a gcc/binutils/everything-else that links to UCRT.
>
> So if the user has the UCRT version installed, they will necessarily
> link against UCRT64.

The user can have all distributions installed, if he wishes. They live
in separate directories.

There is an emacs package for each distribution (for instance:
mingw-w64-x86_64-emacs for MSVCRT on x86_64, mingw-w64-i686-emacs for
MSVCRT on x86, both built with gcc, mingw-w64-clang-x86_64-emacs for
UCRT64 built with Clang, etc). Each of those packages installs on a
different directory hierarchy.

If the user opts for building his own Emacs, he must take care of
installing it along its dependencies or running it after adjusting PATH
to point to the directory where the binary dependencies are stored. For
instance, if he builds in a CLANG64 shell, the resulting binary will
depend on UCRT and the dlls located in the subdirectory /clang64/bin of
the MSYS2 install.

> Does the wording in nt/INSTALL.W64 guide users to only one of these
> two variants (and if so, to which one), or is it generic, and the user
> will have to choose when they install MinGW?

It definitively points to the MINGW64 variant (the traditional one that
uses MSVCRT *and* runs on x86_64) because it lists the packages with the
mingw-w64-x86_64- prefix.

A cursory look also shows some important problems with that document.
For instance, gives a link to download the MSYS2 installer instead of
directing the user to the MSYS2 project webpage (msys2.org). That link
is no longer valid.

In general, I don't know why we (Emacs) make the effort of providing so
much guidance for building under MSYS2 when no similar level of detail
is provided for Debian, Fedora, Cygwin, etc. Actually, building Emacs
under MSYS2 is almost the same as the other platforms.

>> The commit message says "fclose fail during atexit as if they were
>> already closed" but indeed it doesn't describe a user-visible problem. I
>> can ask for more details, if you are interested.
>
> I am.

Ok, I'll ask the patch author.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 18:56                                   ` Óscar Fuentes
@ 2022-12-24 19:10                                     ` Eli Zaretskii
  2022-12-25  2:46                                       ` Óscar Fuentes
  2022-12-24 19:19                                     ` Óscar Fuentes
  1 sibling, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 19:10 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: emacs-devel@gnu.org
> Date: Sat, 24 Dec 2022 19:56:51 +0100
> 
> > Does the wording in nt/INSTALL.W64 guide users to only one of these
> > two variants (and if so, to which one), or is it generic, and the user
> > will have to choose when they install MinGW?
> 
> It definitively points to the MINGW64 variant (the traditional one that
> uses MSVCRT *and* runs on x86_64) because it lists the packages with the
> mingw-w64-x86_64- prefix.

OK, that's good.

> A cursory look also shows some important problems with that document.
> For instance, gives a link to download the MSYS2 installer instead of
> directing the user to the MSYS2 project webpage (msys2.org). That link
> is no longer valid.

Fixes for stale and outdated URLs will be appreciated.

> In general, I don't know why we (Emacs) make the effort of providing so
> much guidance for building under MSYS2 when no similar level of detail
> is provided for Debian, Fedora, Cygwin, etc.

The Windows users typically need to do more to arrange for a working
build environment than users on Posix hosts.

> Actually, building Emacs under MSYS2 is almost the same as the other
> platforms.

Once you have a suitable build environment, yes.  But until you get
there, no.

> >> The commit message says "fclose fail during atexit as if they were
> >> already closed" but indeed it doesn't describe a user-visible problem. I
> >> can ask for more details, if you are interested.
> >
> > I am.
> 
> Ok, I'll ask the patch author.

My guess is that close_stream (which is a Gnulib module) does
something that fails with UCRT.  For example, it uses __fpending, and
AFAIR that's defined in Emacs for Windows using the MSVCRT internals
of the FILE object, so maybe it needs to be amended.

In general, I would suggest to step into close_stream and see what
exactly fails there.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 18:56                                   ` Óscar Fuentes
  2022-12-24 19:10                                     ` Eli Zaretskii
@ 2022-12-24 19:19                                     ` Óscar Fuentes
  2022-12-24 19:27                                       ` Eli Zaretskii
  1 sibling, 1 reply; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 19:19 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

Óscar Fuentes <ofv@wanadoo.es> writes:

>>> The commit message says "fclose fail during atexit as if they were
>>> already closed" but indeed it doesn't describe a user-visible problem. I
>>> can ask for more details, if you are interested.
>>
>> I am.
>
> Ok, I'll ask the patch author.

This is his answer:

  Afair it showed an error at exit and exited != 0.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 18:49                         ` Eli Zaretskii
@ 2022-12-24 19:23                           ` Óscar Fuentes
  2022-12-24 19:29                             ` Eli Zaretskii
  0 siblings, 1 reply; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 19:23 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> > So what are the details?  Which versions of Windows does MSYS2
>> > support, 
>> 
>> Since about 1 week ago, the minimum requirement is Windows 8.1. Hardware
>> requirements were also recently upgraded. A CPU from 2007 onwards should
>> be fine:
>> 
>> https://www.msys2.org/news/#2022-10-18-new-minimum-hardware-requirements-cpus-from-20067
>
> And the MinGW64 folks now informed me that MinGW64 switched to
> Windows 10 as the default target about a year ago.  See
>
>   https://github.com/msys2/MINGW-packages/issues/14573#issuecomment-1364569522
>
> Which in practice means building with MinGW64 on versions of
> MS-Windows older than 10 is no longer safe ore recommended.
>
> I updated the installation instructions and PROBLEMS to that effect.

As I just commented on the Github discussion, MinGW-w64 just set the
configure-time default for the target OS version. It still supports
previous versions. Also, MinGW-w64 distributes source, while MSYS2
distributes binaries. And the MinGW-w64 binaries distributed by MSYS2
sets the target OS version to 8.1



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 19:19                                     ` Óscar Fuentes
@ 2022-12-24 19:27                                       ` Eli Zaretskii
  0 siblings, 0 replies; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 19:27 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: emacs-devel@gnu.org
> Date: Sat, 24 Dec 2022 20:19:24 +0100
> 
> Óscar Fuentes <ofv@wanadoo.es> writes:
> 
> >>> The commit message says "fclose fail during atexit as if they were
> >>> already closed" but indeed it doesn't describe a user-visible problem. I
> >>> can ask for more details, if you are interested.
> >>
> >> I am.
> >
> > Ok, I'll ask the patch author.
> 
> This is his answer:
> 
>   Afair it showed an error at exit and exited != 0.

Here's the source code of close_stream (after I removed the comments):

  int
  close_stream (FILE *stream)
  {
    const bool some_pending = (__fpending (stream) != 0);
    const bool prev_fail = (ferror (stream) != 0);
    const bool fclose_fail = (fclose (stream) != 0);

    if (prev_fail || (fclose_fail && (some_pending || errno != EBADF)))
      {
	if (! fclose_fail)
	  errno = 0;
	return EOF;
      }

    return 0;
  }

My questions are simple: which of the conditions for the error return
actually happened?  And what was the value of 'errno' (the code only
filters out EBADF)?



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 19:23                           ` Óscar Fuentes
@ 2022-12-24 19:29                             ` Eli Zaretskii
  2022-12-24 19:44                               ` Óscar Fuentes
  0 siblings, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-24 19:29 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: emacs-devel@gnu.org
> Date: Sat, 24 Dec 2022 20:23:05 +0100
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > And the MinGW64 folks now informed me that MinGW64 switched to
> > Windows 10 as the default target about a year ago.  See
> >
> >   https://github.com/msys2/MINGW-packages/issues/14573#issuecomment-1364569522
> >
> > Which in practice means building with MinGW64 on versions of
> > MS-Windows older than 10 is no longer safe ore recommended.
> >
> > I updated the installation instructions and PROBLEMS to that effect.
> 
> As I just commented on the Github discussion, MinGW-w64 just set the
> configure-time default for the target OS version. It still supports
> previous versions. Also, MinGW-w64 distributes source, while MSYS2
> distributes binaries. And the MinGW-w64 binaries distributed by MSYS2
> sets the target OS version to 8.1

And as I just replied there, in this case the default targets very
soon becomes the de-facto minimum supported target.  And since that
change in MinGW64 was done almost a year ago, it is reasonable to
assume that it propagated to all the important MinGW64 packages, and
thus to Emacs.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 19:29                             ` Eli Zaretskii
@ 2022-12-24 19:44                               ` Óscar Fuentes
  0 siblings, 0 replies; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-24 19:44 UTC (permalink / raw)
  To: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> > And the MinGW64 folks now informed me that MinGW64 switched to
>> > Windows 10 as the default target about a year ago.  See
>> >
>> >   https://github.com/msys2/MINGW-packages/issues/14573#issuecomment-1364569522
>> >
>> > Which in practice means building with MinGW64 on versions of
>> > MS-Windows older than 10 is no longer safe ore recommended.
>> >
>> > I updated the installation instructions and PROBLEMS to that effect.
>> 
>> As I just commented on the Github discussion, MinGW-w64 just set the
>> configure-time default for the target OS version. It still supports
>> previous versions. Also, MinGW-w64 distributes source, while MSYS2
>> distributes binaries. And the MinGW-w64 binaries distributed by MSYS2
>> sets the target OS version to 8.1
>
> And as I just replied there, in this case the default targets very
> soon becomes the de-facto minimum supported target.  And since that
> change in MinGW64 was done almost a year ago, it is reasonable to
> assume that it propagated to all the important MinGW64 packages, and
> thus to Emacs.

That's not how it works. When the MinGW-w64 "binary" (*) package is
built, MSYS2 sets the target (8.1 at the time of writing.) This setting
is frozen on the build products. This means that the MinGW-w64 package
distributed by MSYS2 will require 8.1 and will impose that requirement
on packages that link to it and, probably, also on packages that were
built with it (because of inlines or macros.)

* The package actually contains dlls, import libraries and header files,
  so it is both a bin and a dev package in Debian's pseudo-parlance.




^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 15:44                     ` Eli Zaretskii
@ 2022-12-24 22:50                       ` Loreno Heer
  0 siblings, 0 replies; 40+ messages in thread
From: Loreno Heer @ 2022-12-24 22:50 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

On 24.12.2022 16:44, Eli Zaretskii wrote:
>> Date: Sat, 24 Dec 2022 16:11:47 +0100
>> Cc: emacs-devel@gnu.org
>> From: Loreno Heer <helohe@bluewin.ch>
>>
>>> Are you building Emacs on Windows 7?  If yes, I understand what they
>>> are saying: that MinGW64 no longer supports Windows 7.
>>
>> Yes I am building on Win 7 ESR. But it looks like I have to switch to
>> linux soon because everyone drops support for it.
>>
>> I think in theory though their build system still supports win 7 or
>> older just fine. As long as I set that variable everything builds and
>> runs just fine.
> 
> In general, when the runtime drops support for Windows 7, you cannot
> reliably run binaries produced with that runtime on that system.  It
> could be sheer luck that you get away during the build process, and
> even if you do get away, the produced binary could fail in some weird
> ways afterwards.

That is a pity, but thanks for all the help and pointing this out.
I planned to migrate to linux at some point next year anyway. Mostly
just my music player and some other things (firmware updates for RME
hardware) keep forcing me to use windows. But still was hoping to have
some more time to do so.
> 
> 




^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 17:57                               ` Óscar Fuentes
  2022-12-24 18:09                                 ` Eli Zaretskii
@ 2022-12-25  0:13                                 ` Po Lu
  2022-12-25  0:48                                   ` Óscar Fuentes
  2022-12-25  6:46                                   ` Eli Zaretskii
  1 sibling, 2 replies; 40+ messages in thread
From: Po Lu @ 2022-12-25  0:13 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: Eli Zaretskii, emacs-devel

If Emacs is built with ucrt or Clang, will it still work on Windows 9X?



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-25  0:13                                 ` Po Lu
@ 2022-12-25  0:48                                   ` Óscar Fuentes
  2022-12-25  6:46                                   ` Eli Zaretskii
  1 sibling, 0 replies; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-25  0:48 UTC (permalink / raw)
  To: emacs-devel

Po Lu <luangruo@yahoo.com> writes:

> If Emacs is built with ucrt or Clang, will it still work on Windows
> 9X?

I don't think so, no, as UCRT requires Windows Vista (officially Vista
SP2). But even using MSVCRT, apart from toy projects, I don't think it
is feasible to target W9X with any modern toolset unless you tweak a
fair chunk of its runtime code.




^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-24 19:10                                     ` Eli Zaretskii
@ 2022-12-25  2:46                                       ` Óscar Fuentes
  2022-12-25  8:29                                         ` Eli Zaretskii
  0 siblings, 1 reply; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-25  2:46 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> > Does the wording in nt/INSTALL.W64 guide users to only one of these
>> > two variants (and if so, to which one), or is it generic, and the user
>> > will have to choose when they install MinGW?
>> 
>> It definitively points to the MINGW64 variant (the traditional one that
>> uses MSVCRT *and* runs on x86_64) because it lists the packages with the
>> mingw-w64-x86_64- prefix.
>
> OK, that's good.
>
>> A cursory look also shows some important problems with that document.
>> For instance, gives a link to download the MSYS2 installer instead of
>> directing the user to the MSYS2 project webpage (msys2.org). That link
>> is no longer valid.
>
> Fixes for stale and outdated URLs will be appreciated.

I fixed the URLs and simplified the instructions a bit. Some problems
remain:

* There are references to past emacs versions.

* The instructions for getting Emacs' sources via git create a versioned
  emacs directory when in fact the user is checking out master.

* The instructions for building from the tarball are mixed with the
  instructions for building from git. They use different names for the
  root source directory and there are expressions that might confuse the
  unexperienced user (there is a mention to "development sources" where
  those are previously referred as "the Git repository.")

* The --prefix parameter passed to `configure' will cause Emacs to be
  installed in the source directory.

* libgccjit is missing on the list of dependencies.

* ...probably more...

>> In general, I don't know why we (Emacs) make the effort of providing so
>> much guidance for building under MSYS2 when no similar level of detail
>> is provided for Debian, Fedora, Cygwin, etc.
>
> The Windows users typically need to do more to arrange for a working
> build environment than users on Posix hosts.

By large, the worst part of building Emacs is to figure out the packages
you need to install. That's equally difficult for most GNU/Linux
distributions as for MSYS2.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-25  0:13                                 ` Po Lu
  2022-12-25  0:48                                   ` Óscar Fuentes
@ 2022-12-25  6:46                                   ` Eli Zaretskii
  1 sibling, 0 replies; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-25  6:46 UTC (permalink / raw)
  To: Po Lu; +Cc: ofv, emacs-devel

> From: Po Lu <luangruo@yahoo.com>
> Cc: Eli Zaretskii <eliz@gnu.org>,  emacs-devel@gnu.org
> Date: Sun, 25 Dec 2022 08:13:34 +0800
> 
> If Emacs is built with ucrt or Clang, will it still work on Windows 9X?

AFAIK, UCRT is only available for Windows XP and newer systems.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-25  2:46                                       ` Óscar Fuentes
@ 2022-12-25  8:29                                         ` Eli Zaretskii
  2022-12-25 14:25                                           ` Óscar Fuentes
  0 siblings, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-25  8:29 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Cc: emacs-devel@gnu.org
> Date: Sun, 25 Dec 2022 03:46:50 +0100
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > Fixes for stale and outdated URLs will be appreciated.
> 
> I fixed the URLs and simplified the instructions a bit.

Thanks.  (Please in the future make sure to leave two spaces between
sentences.)

This part is unclear:

  ** Download and install MinGW-w64 and MSYS2

  Go to https://msys2.org and follow the instructions.  It is not
  necessary to install the packages suggested on those instructions.

What does the last sentence mean? which packages are unnecessary?
Some of them, all of them?

Also, it looks like msys2.org tells users to install the UCRT64
variety of MinGW, whereas you said earlier that INSTALL.W64 points to
the MSVCRT variety.  Should we say something about this in the
Download and Install sections?

> Some problems remain:
> 
> * There are references to past emacs versions.

I fixed that, but I honestly don't see how this is important.  They
are just examples.

> * The instructions for getting Emacs' sources via git create a versioned
>   emacs directory when in fact the user is checking out master.

Fixed.

> * The instructions for building from the tarball are mixed with the
>   instructions for building from git. They use different names for the
>   root source directory and there are expressions that might confuse the
>   unexperienced user (there is a mention to "development sources" where
>   those are previously referred as "the Git repository.")

Fixed.

> * The --prefix parameter passed to `configure' will cause Emacs to be
>   installed in the source directory.

Fixed

> * libgccjit is missing on the list of dependencies.

Please tell how to modify the pacman command to add libgccjit.

> * ...probably more...

Feel free to fix.  I don't use MinGW64, so I cannot do that myself.

> >> In general, I don't know why we (Emacs) make the effort of providing so
> >> much guidance for building under MSYS2 when no similar level of detail
> >> is provided for Debian, Fedora, Cygwin, etc.
> >
> > The Windows users typically need to do more to arrange for a working
> > build environment than users on Posix hosts.
> 
> By large, the worst part of building Emacs is to figure out the packages
> you need to install. That's equally difficult for most GNU/Linux
> distributions as for MSYS2.

If by "packages" you mean the optional libraries, I agree to a point.
But what I meant was the development and build environment, which
includes GCC/Binutils, MSYS with all the related tools, Git, etc.
This comes OOTB on Posix hosts, but not on Windows.  Most problems
people have building Emacs on Windows are due to their environment
being incomplete or misconfigured, especially since the tools are not
native Windows tools, and some need a certain state of mind that
Windows users might lack.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-25  8:29                                         ` Eli Zaretskii
@ 2022-12-25 14:25                                           ` Óscar Fuentes
  2022-12-26 13:02                                             ` Eli Zaretskii
  0 siblings, 1 reply; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-25 14:25 UTC (permalink / raw)
  To: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> I fixed the URLs and simplified the instructions a bit.
>
> Thanks.  (Please in the future make sure to leave two spaces between
> sentences.)

Uh! Sorry.

> This part is unclear:
>
>   ** Download and install MinGW-w64 and MSYS2
>
>   Go to https://msys2.org and follow the instructions.  It is not
>   necessary to install the packages suggested on those instructions.
>
> What does the last sentence mean? which packages are unnecessary?
> Some of them, all of them?

The packages mentioned on msys2.org either are the "wrong" ones (UCRT64)
or are already listed on INSTALL.W64.

> Also, it looks like msys2.org tells users to install the UCRT64
> variety of MinGW,

Yes, UCRT64 is the variety recommended by the MSYS2 team since recently.

> whereas you said earlier that INSTALL.W64 points to
> the MSVCRT variety.  Should we say something about this in the
> Download and Install sections?

That's already solved as our instructions direct the user to the MINGW64
shell and the packages on our list are the mingw-w64-x86_64-* variety.

>> Some problems remain:
>> 
>> * There are references to past emacs versions.
>
> I fixed that, but I honestly don't see how this is important.  They
> are just examples.

The impression I got from that document is that the user will tend to
type commands verbatim.

>> * libgccjit is missing on the list of dependencies.
>
> Please tell how to modify the pacman command to add libgccjit.

Add the package mingw-w64-x86_64-libgccjit.

>> By large, the worst part of building Emacs is to figure out the packages
>> you need to install. That's equally difficult for most GNU/Linux
>> distributions as for MSYS2.
>
> If by "packages" you mean the optional libraries, I agree to a point.
> But what I meant was the development and build environment, which
> includes GCC/Binutils, MSYS with all the related tools, Git, etc.
> This comes OOTB on Posix hosts, but not on Windows.

Last time I installed Debian I had to explicitly install gcc, binutils,
git, make... Indeed, figuring out the library dependencies is the worst
part by far, but AFAIK many GNU/Linux nowadays do not install a
development toolchain by default.

Don't get me wrong, INSTALL.W64 is nice to have. But I'm puzzled by it
providing so much specific detail while for other platforms we don't
even have a list of library names, much less the package names they are
distributed on popular distributions.




^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-25 14:25                                           ` Óscar Fuentes
@ 2022-12-26 13:02                                             ` Eli Zaretskii
  2022-12-26 13:33                                               ` Óscar Fuentes
  0 siblings, 1 reply; 40+ messages in thread
From: Eli Zaretskii @ 2022-12-26 13:02 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

> From: Óscar Fuentes <ofv@wanadoo.es>
> Date: Sun, 25 Dec 2022 15:25:50 +0100
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >   ** Download and install MinGW-w64 and MSYS2
> >
> >   Go to https://msys2.org and follow the instructions.  It is not
> >   necessary to install the packages suggested on those instructions.
> >
> > What does the last sentence mean? which packages are unnecessary?
> > Some of them, all of them?
> 
> The packages mentioned on msys2.org either are the "wrong" ones (UCRT64)
> or are already listed on INSTALL.W64.

So you are saying they should "follow the instructions" up until and
including item 5, and thereafter proceed with what we say in "**
Download and install the necessary packages"?

> > Also, it looks like msys2.org tells users to install the UCRT64
> > variety of MinGW,
> 
> Yes, UCRT64 is the variety recommended by the MSYS2 team since recently.
> 
> > whereas you said earlier that INSTALL.W64 points to
> > the MSVCRT variety.  Should we say something about this in the
> > Download and Install sections?
> 
> That's already solved as our instructions direct the user to the MINGW64
> shell and the packages on our list are the mingw-w64-x86_64-* variety.
> 
> >> Some problems remain:
> >> 
> >> * There are references to past emacs versions.
> >
> > I fixed that, but I honestly don't see how this is important.  They
> > are just examples.
> 
> The impression I got from that document is that the user will tend to
> type commands verbatim.
> 
> >> * libgccjit is missing on the list of dependencies.
> >
> > Please tell how to modify the pacman command to add libgccjit.
> 
> Add the package mingw-w64-x86_64-libgccjit.

Got it, thanks.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: MinGW build on master fails with Error 127
  2022-12-26 13:02                                             ` Eli Zaretskii
@ 2022-12-26 13:33                                               ` Óscar Fuentes
  0 siblings, 0 replies; 40+ messages in thread
From: Óscar Fuentes @ 2022-12-26 13:33 UTC (permalink / raw)
  To: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> The packages mentioned on msys2.org either are the "wrong" ones (UCRT64)
>> or are already listed on INSTALL.W64.
>
> So you are saying they should "follow the instructions" up until and
> including item 5, and thereafter proceed with what we say in "**
> Download and install the necessary packages"?

I'm saying that the packages listed on msys2.org are either unnecessary
or redundant, so that step can be skipped. And the next step there is
just "see, you have gcc installed."

If you intend to adapt the INSTALL.W64 instructions keep in mind that
the instructions on msys2.org can change anytime, so saying "follow the
instructions on msys2.org until step 5" is not advisable.




^ permalink raw reply	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2022-12-26 13:33 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-12 15:26 MinGW build on master fails with Error 127 Loreno Heer
2022-12-12 15:40 ` Eli Zaretskii
2022-12-12 15:44   ` Loreno Heer
2022-12-12 15:56     ` Eli Zaretskii
2022-12-12 16:03       ` Loreno Heer
2022-12-12 16:11         ` Eli Zaretskii
2022-12-12 16:54           ` Loreno Heer
2022-12-23 21:45           ` Loreno Heer
2022-12-24  6:36             ` Eli Zaretskii
2022-12-24 14:18               ` Loreno Heer
2022-12-24 14:43                 ` Eli Zaretskii
2022-12-24 15:11                   ` Loreno Heer
2022-12-24 15:44                     ` Eli Zaretskii
2022-12-24 22:50                       ` Loreno Heer
2022-12-24 15:31                   ` Óscar Fuentes
2022-12-24 15:50                     ` Eli Zaretskii
2022-12-24 16:14                       ` Óscar Fuentes
2022-12-24 16:46                         ` Eli Zaretskii
2022-12-24 16:58                           ` Óscar Fuentes
2022-12-24 17:08                           ` Óscar Fuentes
2022-12-24 17:20                             ` Eli Zaretskii
2022-12-24 17:57                               ` Óscar Fuentes
2022-12-24 18:09                                 ` Eli Zaretskii
2022-12-24 18:56                                   ` Óscar Fuentes
2022-12-24 19:10                                     ` Eli Zaretskii
2022-12-25  2:46                                       ` Óscar Fuentes
2022-12-25  8:29                                         ` Eli Zaretskii
2022-12-25 14:25                                           ` Óscar Fuentes
2022-12-26 13:02                                             ` Eli Zaretskii
2022-12-26 13:33                                               ` Óscar Fuentes
2022-12-24 19:19                                     ` Óscar Fuentes
2022-12-24 19:27                                       ` Eli Zaretskii
2022-12-25  0:13                                 ` Po Lu
2022-12-25  0:48                                   ` Óscar Fuentes
2022-12-25  6:46                                   ` Eli Zaretskii
2022-12-24 18:03                               ` Óscar Fuentes
2022-12-24 18:49                         ` Eli Zaretskii
2022-12-24 19:23                           ` Óscar Fuentes
2022-12-24 19:29                             ` Eli Zaretskii
2022-12-24 19:44                               ` Óscar Fuentes

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).