* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
@ 2017-09-25 20:02 Vincent Belaïche
2017-09-27 18:36 ` Glenn Morris
0 siblings, 1 reply; 48+ messages in thread
From: Vincent Belaïche @ 2017-09-25 20:02 UTC (permalink / raw)
To: 28601; +Cc: Vincent Belaïche
I am trying to re-compile Emacs on MSW10 + MSYS2. This used to be
working, but now I get the following error:
--8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
checking build system type... x86_64-pc-msys
checking host system type... x86_64-pc-msys
configure: error: Emacs does not support 'x86_64-pc-msys' systems.
If you think it should, please send a report to bug-gnu-emacs@gnu.org.
Check 'etc/MACHINES' for recognized configuration names.
--8<----8<----8<----8<----8<-- end -->8---->8---->8---->8---->8----
In GNU Emacs 26.0.50 (build 1, i686-pc-mingw32)
of 2017-07-02 built on AIGLEROYAL
Repository revision: 3bab927884c4b795f8545b632328b5d3b632eed3
Windowing system distributor 'Microsoft Corp.', version 10.0.14393
Recent messages:
No match
bash refresh default directory ...
sending >pwd -W
coucou!=>C:/Programmes/installation
]0;/c/Programmes/installation\a
[32mVincent@AigleRoyal [35m[0m [33m/c/Programmes/installation[0m
$ <=
bash refresh default directory ... done
c:/Programmes/installation/emacs-install
Configured using:
'configure --prefix=c:/Nos_Programmes/GNU/Emacs --without-jpeg
--without-tiff --without-gif --without-png 'CFLAGS= -Og -g3 -L
C:/Programmes/installation/emacs-install/libXpm-3.5.8/src' 'CPPFLAGS=
-DFOR_MSW=1 -I
C:/Programmes/installation/emacs-install/libXpm-3.5.8/include -I
C:/Programmes/installation/emacs-install/libXpm-3.5.8/src -L
C:/Programmes/installation/emacs-install/libXpm-3.5.8/src'
PKG_CONFIG=/mingw/bin/pkg-config.exe PKG_CONFIG_PATH=/mingw/bin'
Configured features:
XPM SOUND NOTIFY ACL GNUTLS TOOLKIT_SCROLL_BARS
Important settings:
value of $LANG: FRA
locale-coding-system: cp1252
Major mode: Shell
Minor modes in effect:
compilation-in-progress: (compilation compilation compilation)
semantic-minor-modes-format: ((:eval (if (or semantic-highlight-edits-mode semantic-show-unmatched-syntax-mode jdee-bug-minor-mode jdee-jdb-minor-mode) S)))
global-semanticdb-minor-mode: t
global-semantic-idle-scheduler-mode: t
semantic-mode: t
diff-auto-refine-mode: t
shell-dirtrack-mode: t
TeX-PDF-mode: t
recentf-mode: t
tooltip-mode: t
global-eldoc-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Load-path shadows:
c:/Programmes/installation/jdee/jdee hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee
c:/Programmes/installation/jdee/jdee-xref hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-xref
c:/Programmes/installation/jdee/jdee-wiz hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-wiz
c:/Programmes/installation/jdee/jdee-widgets hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-widgets
c:/Programmes/installation/jdee/jdee-which-method hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-which-method
c:/Programmes/installation/jdee/jdee-util hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-util
c:/Programmes/installation/jdee/jdee-test hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-test
c:/Programmes/installation/jdee/jdee-stat hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-stat
c:/Programmes/installation/jdee/jdee-stacktrace hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-stacktrace
c:/Programmes/installation/jdee/jdee-run hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-run
c:/Programmes/installation/jdee/jdee-refactor hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-refactor
c:/Programmes/installation/jdee/jdee-project hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-project
c:/Programmes/installation/jdee/jdee-project-file hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-project-file
c:/Programmes/installation/jdee/jdee-plugins hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-plugins
c:/Programmes/installation/jdee/jdee-parse hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-parse
c:/Programmes/installation/jdee/jdee-parse-expr hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-parse-expr
c:/Programmes/installation/jdee/jdee-package hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-package
c:/Programmes/installation/jdee/jdee-open-source hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-open-source
c:/Programmes/installation/jdee/jdee-maven hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-maven
c:/Programmes/installation/jdee/jdee-make hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-make
c:/Programmes/installation/jdee/jdee-log hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-log
c:/Programmes/installation/jdee/jdee-keys hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-keys
c:/Programmes/installation/jdee/jdee-junit hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-junit
c:/Programmes/installation/jdee/jdee-juci hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-juci
c:/Programmes/installation/jdee/jdee-jdk-manager hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-jdk-manager
c:/Programmes/installation/jdee/jdee-jdb hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-jdb
c:/Programmes/installation/jdee/jdee-javadoc hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-javadoc
c:/Programmes/installation/jdee/jdee-javadoc-gen hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-javadoc-gen
c:/Programmes/installation/jdee/jdee-java-properties hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-java-properties
c:/Programmes/installation/jdee/jdee-java-grammar hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-java-grammar
c:/Programmes/installation/jdee/jdee-issues hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-issues
c:/Programmes/installation/jdee/jdee-import hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-import
c:/Programmes/installation/jdee/jdee-imenu hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-imenu
c:/Programmes/installation/jdee/jdee-help hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-help
c:/Programmes/installation/jdee/jdee-gen hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-gen
c:/Programmes/installation/jdee/jdee-font-lock hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-font-lock
c:/Programmes/installation/jdee/jdee-flycheck hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-flycheck
c:/Programmes/installation/jdee/jdee-find hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-find
c:/Programmes/installation/jdee/jdee-files hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-files
c:/Programmes/installation/jdee/jdee-ejb hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-ejb
c:/Programmes/installation/jdee/jdee-ecj-flymake hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-ecj-flymake
c:/Programmes/installation/jdee/jdee-deps hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-deps
c:/Programmes/installation/jdee/jdee-dbs hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-dbs
c:/Programmes/installation/jdee/jdee-dbo hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-dbo
c:/Programmes/installation/jdee/jdee-db hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-db
c:/Programmes/installation/jdee/jdee-cygwin hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-cygwin
c:/Programmes/installation/jdee/jdee-custom hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-custom
c:/Programmes/installation/jdee/jdee-complete hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-complete
c:/Programmes/installation/jdee/jdee-compile hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-compile
c:/Programmes/installation/jdee/jdee-classpath hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-classpath
c:/Programmes/installation/jdee/jdee-class hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-class
c:/Programmes/installation/jdee/jdee-checkstyle hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-checkstyle
c:/Programmes/installation/jdee/jdee-bytecode hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-bytecode
c:/Programmes/installation/jdee/jdee-bug hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-bug
c:/Programmes/installation/jdee/jdee-bsh hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-bsh
c:/Programmes/installation/jdee/jdee-bookmark hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-bookmark
c:/Programmes/installation/jdee/jdee-backend hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-backend
c:/Programmes/installation/jdee/jdee-archive hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-archive
c:/Programmes/installation/jdee/jdee-ant hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-ant
c:/Programmes/installation/jdee/jdee-annotations hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-annotations
c:/Programmes/installation/jdee/jdee-activator hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-activator
c:/Programmes/installation/jdee/jdee-abbrev hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jdee-abbrev
c:/Programmes/installation/jdee/jcomplete hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/jcomplete
c:/Programmes/installation/jdee/efc hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/efc
c:/Programmes/installation/jdee/beanshell hides c:/Users/Vincent/AppData/Roaming/.emacs.d/elpa/jdee-2.4.2/beanshell
c:/Programmes/installation/cedet-install/cedet-git/lisp/speedbar/loaddefs hides c:/Nos_Programmes/GNU/Emacs_build20170702/share/emacs/26.0.50/lisp/loaddefs
c:/Programmes/installation/cedet-install/cedet-git/lisp/speedbar/loaddefs hides c:/Programmes/installation/cedet-install/cedet-git/lisp/cedet/loaddefs
Features:
(shadow emacsbug goto-addr view epa-dired jdee-ant jdee-ejb jdee-make
semantic/edit semantic/tag-file jdee-flycheck semantic/bovine/c hideif
semantic/bovine/c-by semantic/lex-spp semantic/bovine/gcc
semantic/analyze/refs semantic/bovine/make semantic/decorate/include
semantic/decorate/mode semantic/analyze semantic/scope
semantic/analyze/fcn semantic/bovine/make-by semantic/texi
semantic/bovine/el semantic/db-el semantic/bovine semantic/db-mode
semantic/wisent/java-tags semantic/wisent/java-tags-wy semantic/wisent
semantic/wisent/wisent jdee-plugins ffap jdee-javadoc-gen jdee jdee-wiz
jdee-test jdee-archive jdee-stacktrace jdee-refactor jdee-keys jdee-jdb
jdee-java-grammar jdee-which-method jdee-font-lock jdee-issues jdee-help
jdee-gen tempo jdee-find jdee-deps jdee-cygwin jdee-class jdee-bug
jdee-annotations jdee-abbrev jdee-activator flymake jdee-bytecode
jdee-compile jdee-dbs jdee-run jdee-dbo jdee-widgets jdee-db memoize
jdee-jdk-manager jdee-project-file jdee-maven jdee-open-source
semantic/senator semantic/decorate pulse jdee-import jdee-complete
semantic/idle working fame jdee-parse jdee-imenu semantic/imenu
semantic/sb semantic/sort semantic/db-file semantic/adebug
eieio-datadebug data-debug cedet-files semantic/java semantic/dep
semantic/format semantic/tag-ls semantic/doc semantic/ctxt
semantic/util-modes semantic/util semantic/db-find semantic/db-ref
semantic/db semantic/find eieio-base semantic semantic/tag semantic/lex
semantic/fw mode-local cedet avl-tree etags xref project jdee-log
jdee-custom jdee-backend jdee-bsh jdee-util arc-mode archive-mode efc
jdee-parse-expr beanshell jdee-classpath jdee-files warnings
eieio-compat ert flycheck dash let-alist tar-mode epl autoload pcase
lisp-mnt mm-archive url-http url-gw url-cache url-auth markdown-mode
calc-vec calc-forms tex-info texinfo conf-mode log-view lpr reftex-cite
ibuf-ext ibuffer ibuffer-loaddefs loadhist pp calc-stuff calc-lang
calccomp calc-units calc-aent iso-transl org-table novice cc-langs
tabify bbdb-tex plain-tex ruler-mode hexl cus-edit multi-prompt info rx
cl-print debug eieio-opt speedbar sb-image ezimage dframe help-fns
radix-tree calc-undo pcmpl-gnu mhtml-mode css-mode color eww mm-url
url-queue url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf url-util shr svg xml browse-url js json imenu
sgml-mode dom flyspell ispell calc-bin cal-china lunar solar cal-dst
cal-bahai cal-islam cal-hebrew cal-julian holidays hol-loaddefs cal-iso
cal-move bug-reference gnus-async gnus-ml cursor-sensor nndraft nnmh
nnfolder cl-extra bbdb-gnus bbdb-mua gnus-agent gnus-srvr gnus-score
score-mode nnvirtual gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime
smime dig nntp gnus-cache gnus-sum gnus-group gnus-undo gnus-start
gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo parse-time
gnus-spec gnus-int gnus-range gnus-win gnus nnheader reftex-auc
find-dired grep cus-start cus-load quail help-mode calc-yank calc-mode
calc-alg calc-menu diary-lib diary-loaddefs reftex-parse texmathp
ediff-vers cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align
cc-engine cc-vars cc-defs perl-mode make-mode org-element org-rmail
org-mhe org-irc org-info org-gnus org-docview doc-view image-mode
org-bibtex bibtex org-bbdb org-w3m org org-macro org-footnote
org-pcomplete org-list org-faces org-entities org-version ob-emacs-lisp
ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys ob-comint
ob-core ob-eval org-compat org-macs org-loaddefs find-func cal-tex
cal-menu calendar cal-loaddefs network-stream nsm starttls tls gnutls
mailalias smtpmail qp jka-compr sort mailcap bbdb-com bbdb-message
sendmail mail-extr whitespace log-edit message subr-x puny format-spec
rfc822 mml mml-sec epa derived epg gnus-util rmail rmail-loaddefs
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util
ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader
pcvs-util thingatpt add-log vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs
vc-dir ewoc vc vc-dispatcher rect dired-aux dired-x dired dired-loaddefs
latexenc ediff-merg ediff-wind ediff-diff ediff-mult ediff-help
ediff-init ediff-util ediff preview prv-emacs reftex-dcr reftex
reftex-loaddefs reftex-vars tex-bar tex-buf toolbar-x font-latex latex
tex-ispell tex-style tex-mode compile hl-line misearch multi-isearch
vc-git diff-mode map noutline outline easy-mmode pcmpl-unix sh-script
smie executable shell pcomplete comint ansi-color ring edmacro kmacro
skeleton calc-misc calc-arith calc-ext calc calc-loaddefs calc-macs
tex-mik tex crm advice preview-latex auto-loads tex-site bbdb bbdb-site
timezone bbdb-loaddefs template w32utils cl recentf tree-widget wid-edit
load-path-to-cedet-svn finder-inf package easymenu epg-config
url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs
eieio-loaddefs password-cache url-vars seq byte-opt gv bytecomp
byte-compile cconv cl-loaddefs cl-lib time-date mule-util tooltip eldoc
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel dos-w32
ls-lisp disp-table term/w32-win w32-win w32-vars term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode elisp-mode lisp-mode prog-mode register page
menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core term/tty-colors frame cl-generic
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote w32notify w32 multi-tty
make-network-process emacs)
Memory information:
((conses 8 2792196 346555)
(symbols 32 78888 1)
(miscs 32 10012 2150)
(strings 16 297025 31457)
(string-bytes 1 8920819)
(vectors 8 104212)
(vector-slots 4 2515724 217380)
(floats 8 1100 918)
(intervals 28 301184 1560)
(buffers 516 252))
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-09-25 20:02 bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems Vincent Belaïche
@ 2017-09-27 18:36 ` Glenn Morris
2017-09-27 19:07 ` Vincent Belaïche
0 siblings, 1 reply; 48+ messages in thread
From: Glenn Morris @ 2017-09-27 18:36 UTC (permalink / raw)
To: Vincent Belaïche; +Cc: 28601
Vincent Belaïche wrote:
> I am trying to re-compile Emacs on MSW10 + MSYS2. This used to be
> working, but now I get the following error:
>
> --8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
> checking build system type... x86_64-pc-msys
> checking host system type... x86_64-pc-msys
> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
What version of Emacs did this work in?
AFAICS, configure.ac has never accepted *-msys as a host type.
From https://debbugs.gnu.org/cgi/bugreport.cgi?bug=22240#20 :
configure: error: Emacs does not support 'x86_64-pc-msys' systems.
This turned out to be due to not being in the right environment - I
added the step to switch to the MinGW-w64 environment and now it works
without specifying the --host, etc.
From nt/INSTALL.W64:
First we need to switch to the MinGW-w64 environment. Exit the MSYS2
BASH console and run mingw64_shell.bat in the C:\msys64 folder...
So try that?
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-09-27 18:36 ` Glenn Morris
@ 2017-09-27 19:07 ` Vincent Belaïche
2017-09-27 19:10 ` Vincent Belaïche
2017-09-27 21:37 ` Glenn Morris
0 siblings, 2 replies; 48+ messages in thread
From: Vincent Belaïche @ 2017-09-27 19:07 UTC (permalink / raw)
To: Glenn Morris; +Cc: 28601
Hello Glenn,
There is no such thing as a mingw64_shell.bat script, but there is a
msys2_shell.cmd script, which one can launch with the -mingw64 for
MSYSTEM to be set accordingly to MSYSTEM=MINGW64.
When I do that, then I get the following error :
--8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
checking build system type... x86_64-w64-mingw32
checking host system type... x86_64-w64-mingw32
checking the compiler's target... x86_64-pc-msys
configure: error: Emacs does not support 'x86_64-pc-msys' systems.
--8<----8<----8<----8<----8<-- end -->8---->8---->8---->8---->8----
BR,
V.
Le 27/09/2017 à 20:36, Glenn Morris a écrit :
> Vincent Belaïche wrote:
>
>> I am trying to re-compile Emacs on MSW10 + MSYS2. This used to be
>> working, but now I get the following error:
>>
>> --8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
>> checking build system type... x86_64-pc-msys
>> checking host system type... x86_64-pc-msys
>> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
> What version of Emacs did this work in?
> AFAICS, configure.ac has never accepted *-msys as a host type.
>
> From https://debbugs.gnu.org/cgi/bugreport.cgi?bug=22240#20 :
>
> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
>
> This turned out to be due to not being in the right environment - I
> added the step to switch to the MinGW-w64 environment and now it works
> without specifying the --host, etc.
>
> From nt/INSTALL.W64:
>
> First we need to switch to the MinGW-w64 environment. Exit the MSYS2
> BASH console and run mingw64_shell.bat in the C:\msys64 folder...
>
> So try that?
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-09-27 19:07 ` Vincent Belaïche
@ 2017-09-27 19:10 ` Vincent Belaïche
2017-09-27 21:37 ` Glenn Morris
1 sibling, 0 replies; 48+ messages in thread
From: Vincent Belaïche @ 2017-09-27 19:10 UTC (permalink / raw)
To: Glenn Morris; +Cc: 28601
Answering to myself: there is also a -mingw option with which the script
automatically detects whether mingw64 is there and sets it if so, or
otherwise falls back to mingw32.
V.
Le 27/09/2017 à 21:07, Vincent Belaïche a écrit :
> Hello Glenn,
>
> There is no such thing as a mingw64_shell.bat script, but there is a
> msys2_shell.cmd script, which one can launch with the -mingw64 for
> MSYSTEM to be set accordingly to MSYSTEM=MINGW64.
>
> When I do that, then I get the following error :
>
> --8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
> checking build system type... x86_64-w64-mingw32
> checking host system type... x86_64-w64-mingw32
> checking the compiler's target... x86_64-pc-msys
> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
> --8<----8<----8<----8<----8<-- end -->8---->8---->8---->8---->8----
>
> BR,
> V.
>
> Le 27/09/2017 à 20:36, Glenn Morris a écrit :
>> Vincent Belaïche wrote:
>>
>>> I am trying to re-compile Emacs on MSW10 + MSYS2. This used to be
>>> working, but now I get the following error:
>>>
>>> --8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
>>> checking build system type... x86_64-pc-msys
>>> checking host system type... x86_64-pc-msys
>>> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
>> What version of Emacs did this work in?
>> AFAICS, configure.ac has never accepted *-msys as a host type.
>>
>> From https://debbugs.gnu.org/cgi/bugreport.cgi?bug=22240#20 :
>> configure: error: Emacs does not support 'x86_64-pc-msys'
>> systems.
>> This turned out to be due to not being in the right
>> environment - I
>> added the step to switch to the MinGW-w64 environment and now it
>> works
>> without specifying the --host, etc.
>>
>> From nt/INSTALL.W64:
>>
>> First we need to switch to the MinGW-w64 environment. Exit the MSYS2
>> BASH console and run mingw64_shell.bat in the C:\msys64 folder...
>>
>> So try that?
>
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-09-27 19:07 ` Vincent Belaïche
2017-09-27 19:10 ` Vincent Belaïche
@ 2017-09-27 21:37 ` Glenn Morris
2017-09-28 13:10 ` Andy Moreton
2017-10-13 14:09 ` bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems Vincent Belaïche
1 sibling, 2 replies; 48+ messages in thread
From: Glenn Morris @ 2017-09-27 21:37 UTC (permalink / raw)
To: Vincent Belaïche; +Cc: 28601
Vincent Belaïche wrote:
> There is no such thing as a mingw64_shell.bat script, but there is a
> msys2_shell.cmd script, which one can launch with the -mingw64 for
> MSYSTEM to be set accordingly to MSYSTEM=MINGW64.
Sounds like MinGW has changed how things work and the instructions in
nt/INSTALL.W64 need updating.
> checking the compiler's target... x86_64-pc-msys
> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
This is MinGW-specific code added in https://debbugs.gnu.org/19111
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-09-27 21:37 ` Glenn Morris
@ 2017-09-28 13:10 ` Andy Moreton
2017-09-29 9:37 ` Eli Zaretskii
2017-10-13 14:09 ` bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems Vincent Belaïche
1 sibling, 1 reply; 48+ messages in thread
From: Andy Moreton @ 2017-09-28 13:10 UTC (permalink / raw)
To: 28601
On Wed 27 Sep 2017, Glenn Morris wrote:
> Vincent Belaïche wrote:
>
>> There is no such thing as a mingw64_shell.bat script, but there is a
>> msys2_shell.cmd script, which one can launch with the -mingw64 for
>> MSYSTEM to be set accordingly to MSYSTEM=MINGW64.
>
> Sounds like MinGW has changed how things work and the instructions in
> nt/INSTALL.W64 need updating.
>
>> checking the compiler's target... x86_64-pc-msys
>> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
>
> This is MinGW-specific code added in https://debbugs.gnu.org/19111
Newer MSYS2 installations have mingw32.exe, mingw64.exe and msys2.exe for launching a
shell for each of the build environments, which are more convenient for
creating desktop shortcuts. Either of the first two can be used to build
emacs, if the appropriate toolchain is installed.
AndyM
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-09-28 13:10 ` Andy Moreton
@ 2017-09-29 9:37 ` Eli Zaretskii
2017-10-12 23:06 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-09-29 9:37 UTC (permalink / raw)
To: Andy Moreton; +Cc: 28601
> From: Andy Moreton <andrewjmoreton@gmail.com>
> Date: Thu, 28 Sep 2017 14:10:25 +0100
>
> On Wed 27 Sep 2017, Glenn Morris wrote:
>
> > Vincent Belaïche wrote:
> >
> >> There is no such thing as a mingw64_shell.bat script, but there is a
> >> msys2_shell.cmd script, which one can launch with the -mingw64 for
> >> MSYSTEM to be set accordingly to MSYSTEM=MINGW64.
> >
> > Sounds like MinGW has changed how things work and the instructions in
> > nt/INSTALL.W64 need updating.
> >
> >> checking the compiler's target... x86_64-pc-msys
> >> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
> >
> > This is MinGW-specific code added in https://debbugs.gnu.org/19111
>
>
> Newer MSYS2 installations have mingw32.exe, mingw64.exe and msys2.exe for launching a
> shell for each of the build environments, which are more convenient for
> creating desktop shortcuts. Either of the first two can be used to build
> emacs, if the appropriate toolchain is installed.
Can you or someone else suggest a change for INSTALL.W64, if some
change is needed there?
Thanks.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-09-29 9:37 ` Eli Zaretskii
@ 2017-10-12 23:06 ` Noam Postavsky
2017-10-13 6:41 ` Eli Zaretskii
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-10-12 23:06 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 28601, Andy Moreton, Vincent Belaïche
[-- Attachment #1: Type: text/plain, Size: 444 bytes --]
On Fri, Sep 29, 2017 at 5:37 AM, Eli Zaretskii <eliz@gnu.org> wrote:
>> > Vincent Belaďche wrote:
>> >
>> >> There is no such thing as a mingw64_shell.bat script, but there is a
>> >> msys2_shell.cmd script, which one can launch with the -mingw64 for
>> >> MSYSTEM to be set accordingly to MSYSTEM=MINGW64.
> Can you or someone else suggest a change for INSTALL.W64, if some
> change is needed there?
The attached should do it.
[-- Attachment #2: 0001-nt-INSTALL.W64-Use-mingw64.exe-instead-of-mingw64_sh.patch --]
[-- Type: application/octet-stream, Size: 1037 bytes --]
From fc6083a57cea4f9dff3c865f2185902c337d4cf5 Mon Sep 17 00:00:00 2001
From: Noam Postavsky <npostavs@gmail.com>
Date: Thu, 12 Oct 2017 19:01:37 -0400
Subject: [PATCH] * nt/INSTALL.W64: Use mingw64.exe instead of
mingw64_shell.bat.
---
nt/INSTALL.W64 | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/nt/INSTALL.W64 b/nt/INSTALL.W64
index 841660b..c651a21 100644
--- a/nt/INSTALL.W64
+++ b/nt/INSTALL.W64
@@ -125,8 +125,9 @@ put the Emacs source into C:\emacs\emacs-25:
Now you're ready to build and install Emacs with autogen, configure, make,
and make install.
-First we need to switch to the MinGW-w64 environment. Exit the MSYS2 BASH
-console and run mingw64_shell.bat in the C:\msys64 folder, then cd back to
+First we need to switch to the MinGW-w64 environment. Exit the MSYS2
+BASH console and run mingw64.exe in the C:\msys64 folder (if it's
+missing, install it with 'pacman -S msys2-launcher'), then cd back to
your Emacs source directory, e.g.:
cd /c/emacs/emacs-25
--
2.6.2.windows.1
^ permalink raw reply related [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-12 23:06 ` Noam Postavsky
@ 2017-10-13 6:41 ` Eli Zaretskii
2017-10-13 10:14 ` Andy Moreton
0 siblings, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-10-13 6:41 UTC (permalink / raw)
To: Noam Postavsky; +Cc: 28601, andrewjmoreton, vincent.belaiche
> From: Noam Postavsky <npostavs@users.sourceforge.net>
> Date: Thu, 12 Oct 2017 19:06:56 -0400
> Cc: Andy Moreton <andrewjmoreton@gmail.com>, 28601@debbugs.gnu.org,
> Vincent Belaïche <vincent.belaiche@gmail.com>
>
> -First we need to switch to the MinGW-w64 environment. Exit the MSYS2 BASH
> -console and run mingw64_shell.bat in the C:\msys64 folder, then cd back to
> +First we need to switch to the MinGW-w64 environment. Exit the MSYS2
> +BASH console and run mingw64.exe in the C:\msys64 folder (if it's
> +missing, install it with 'pacman -S msys2-launcher'), then cd back to
> your Emacs source directory, e.g.:
Can we rely on all the users to have the latest MSYS2? If not,
perhaps after your description we should say something like "If you
don't have mingw64.exe, but do have mingw64_shell.bat, then ..."?
Thanks.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 6:41 ` Eli Zaretskii
@ 2017-10-13 10:14 ` Andy Moreton
2017-10-13 12:22 ` Eli Zaretskii
2017-10-13 18:52 ` windows build help Phillip Lord
0 siblings, 2 replies; 48+ messages in thread
From: Andy Moreton @ 2017-10-13 10:14 UTC (permalink / raw)
To: 28601
On Fri 13 Oct 2017, Eli Zaretskii wrote:
>> From: Noam Postavsky <npostavs@users.sourceforge.net>
>> Date: Thu, 12 Oct 2017 19:06:56 -0400
>> Cc: Andy Moreton <andrewjmoreton@gmail.com>, 28601@debbugs.gnu.org,
>> Vincent Belaïche <vincent.belaiche@gmail.com>
>>
>> -First we need to switch to the MinGW-w64 environment. Exit the MSYS2 BASH
>> -console and run mingw64_shell.bat in the C:\msys64 folder, then cd back to
>> +First we need to switch to the MinGW-w64 environment. Exit the MSYS2
>> +BASH console and run mingw64.exe in the C:\msys64 folder (if it's
>> +missing, install it with 'pacman -S msys2-launcher'), then cd back to
>> your Emacs source directory, e.g.:
>
> Can we rely on all the users to have the latest MSYS2? If not,
> perhaps after your description we should say something like "If you
> don't have mingw64.exe, but do have mingw64_shell.bat, then ..."?
MSYS2 is a rolling-release distribution, so any user who does not have
an up to date installation would be well advised to update to current
package versions before attempting to build emacs.
AndyM
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 10:14 ` Andy Moreton
@ 2017-10-13 12:22 ` Eli Zaretskii
2017-10-13 13:52 ` Andy Moreton
2017-10-13 18:52 ` windows build help Phillip Lord
1 sibling, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-10-13 12:22 UTC (permalink / raw)
To: Andy Moreton; +Cc: 28601
> From: Andy Moreton <andrewjmoreton@gmail.com>
> Date: Fri, 13 Oct 2017 11:14:37 +0100
>
> > Can we rely on all the users to have the latest MSYS2? If not,
> > perhaps after your description we should say something like "If you
> > don't have mingw64.exe, but do have mingw64_shell.bat, then ..."?
>
> MSYS2 is a rolling-release distribution, so any user who does not have
> an up to date installation would be well advised to update to current
> package versions before attempting to build emacs.
I understand, but "advised" doesn't mean "forced", does it?
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 12:22 ` Eli Zaretskii
@ 2017-10-13 13:52 ` Andy Moreton
2017-10-13 14:38 ` Eli Zaretskii
0 siblings, 1 reply; 48+ messages in thread
From: Andy Moreton @ 2017-10-13 13:52 UTC (permalink / raw)
To: 28601
On Fri 13 Oct 2017, Eli Zaretskii wrote:
>> From: Andy Moreton <andrewjmoreton@gmail.com>
>> Date: Fri, 13 Oct 2017 11:14:37 +0100
>>
>> > Can we rely on all the users to have the latest MSYS2? If not,
>> > perhaps after your description we should say something like "If you
>> > don't have mingw64.exe, but do have mingw64_shell.bat, then ..."?
>>
>> MSYS2 is a rolling-release distribution, so any user who does not have
>> an up to date installation would be well advised to update to current
>> package versions before attempting to build emacs.
>
> I understand, but "advised" doesn't mean "forced", does it?
No, in that things only get updated if you run pacman. However I thnk
the first respone to "I have a problem" will be "update to current
package versions".
AndyM
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-09-27 21:37 ` Glenn Morris
2017-09-28 13:10 ` Andy Moreton
@ 2017-10-13 14:09 ` Vincent Belaïche
2017-10-13 14:16 ` Noam Postavsky
1 sibling, 1 reply; 48+ messages in thread
From: Vincent Belaïche @ 2017-10-13 14:09 UTC (permalink / raw)
To: Glenn Morris, npostavs, Eli Zaretskii; +Cc: 28601, Vincent Belaïche
Dear Glenn, Noam, Eli, & al.
I realize that I have not answered to you Glenn. My latest build of
Emacs is:
GNU Emacs 26.0.50 (build 1, i686-pc-mingw32) of 2017-07-02
It was done with MSYS1. I see that that platform is ...-mingw32 and not
-msys which explains why it worked.
I switched from MSYS1 to MSYS2 at end of July 2017 because I had too
many problems with MSYS1 not being supported any longer (see for
instance http://savannah.gnu.org/bugs/?51527 about MSYS1 GNUMake issue,
I really, really should have done this switch earlier ...).
Now, I did the:
pacman -S msys2-launcher
as recommended in the INSTALL.W64 patch from Noam, and then I launched
msys64.exe from the MSWindows exporer. But it still does not work, I get
that the compiler target is still x86_64-pc-msys, which is not accepted
by configure.
The reason for this, is that my configure command does not have any
--host option, FYI here it is:
./configure --prefix=c:/Nos_Programmes/GNU/Emacs --without-jpeg --without-tiff --without-gif --without-png 'CFLAGS= -Og -g3 -L C:/Programmes/installation/emacs-install/libXpm-3.5.8/src' 'CPPFLAGS= -DFOR_MSW=1 -I C:/Programmes/installation/emacs-install/libXpm-3.5.8/include -I C:/Programmes/installation/emacs-install/libXpm-3.5.8/src -L C:/Programmes/installation/emacs-install/libXpm-3.5.8/src' PKG_CONFIG=/mingw/bin/pkg-config.exe PKG_CONFIG_PATH=/mingw/bin --no-create --no-recursion
so the configure script tries to know the right host by doing gcc -v,
this test is just after this comment in configure:
# No --host argument was given to 'configure'; therefore $host
# was set to a default value based on the build platform. But
# this default value may be wrong if we are building from a
# 64-bit MSYS[2] pre-configured to build 32-bit MinGW programs.
# Therefore, we'll try to get the right host platform from the
# compiler's target.
When I launch mingw64 and then I do
{ LC_ALL=C gcc -v 2>&1; } | grep Target
I get this :
Target: x86_64-pc-msys
Hence the error which I reported in the first place :.
checking the compiler's target... x86_64-pc-msys
configure: error: Emacs does not support 'x86_64-pc-msys' systems.
So, maybe the INSTALL.W64 should contain some recommendation to use the
--host option in some way to work around this.
Please note that gcc -v makes this output even though my MSYSTEM envvar
expands to MINGW64.
I think that the objective of the gcc -v is to discriminate between 32
and 64 bits, not between MINGW and MSYS. So, it seems that what we have
is an autoconf bug. Am I wrong ?
Vincent.
Le 27/09/2017 à 23:37, Glenn Morris a écrit :
> Vincent Belaïche wrote:
>
>> There is no such thing as a mingw64_shell.bat script, but there is a
>> msys2_shell.cmd script, which one can launch with the -mingw64 for
>> MSYSTEM to be set accordingly to MSYSTEM=MINGW64.
>
> Sounds like MinGW has changed how things work and the instructions in
> nt/INSTALL.W64 need updating.
>
>> checking the compiler's target... x86_64-pc-msys
>> configure: error: Emacs does not support 'x86_64-pc-msys' systems.
>
> This is MinGW-specific code added in https://debbugs.gnu.org/19111
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 14:09 ` bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems Vincent Belaïche
@ 2017-10-13 14:16 ` Noam Postavsky
2017-10-14 1:40 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-10-13 14:16 UTC (permalink / raw)
To: Vincent Belaïche; +Cc: 28601
On Fri, Oct 13, 2017 at 10:09 AM, Vincent Belaïche
<vincent.belaiche@gmail.com> wrote:
> Please note that gcc -v makes this output even though my MSYSTEM envvar
> expands to MINGW64.
>
> I think that the objective of the gcc -v is to discriminate between 32
> and 64 bits, not between MINGW and MSYS. So, it seems that what we have
> is an autoconf bug. Am I wrong ?
I think it means you didn't install the mingw-w64-x86_64-toolchain
metapackage, so you are using the msys toolchain rather than the mingw
one.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 13:52 ` Andy Moreton
@ 2017-10-13 14:38 ` Eli Zaretskii
2017-10-13 16:33 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-10-13 14:38 UTC (permalink / raw)
To: Andy Moreton; +Cc: 28601
> From: Andy Moreton <andrewjmoreton@gmail.com>
> Date: Fri, 13 Oct 2017 14:52:27 +0100
>
> >> MSYS2 is a rolling-release distribution, so any user who does not have
> >> an up to date installation would be well advised to update to current
> >> package versions before attempting to build emacs.
> >
> > I understand, but "advised" doesn't mean "forced", does it?
>
> No, in that things only get updated if you run pacman. However I thnk
> the first respone to "I have a problem" will be "update to current
> package versions".
I don't like requesting users to update all of their software just
because the bleeding edge has moved. Let's not forget that sometimes
(albeit rarely) upgrading to the latest and greatest can bring bugs.
In this case, the payment for allowing older MSYS2 is very small: a
single sentence. I think we should have that.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 14:38 ` Eli Zaretskii
@ 2017-10-13 16:33 ` Noam Postavsky
2017-10-13 17:24 ` Eli Zaretskii
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-10-13 16:33 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 28601, Andy Moreton
[-- Attachment #1: Type: text/plain, Size: 694 bytes --]
On Fri, Oct 13, 2017 at 10:38 AM, Eli Zaretskii <eliz@gnu.org> wrote:
> I don't like requesting users to update all of their software just
> because the bleeding edge has moved. Let's not forget that sometimes
> (albeit rarely) upgrading to the latest and greatest can bring bugs.
>
> In this case, the payment for allowing older MSYS2 is very small: a
> single sentence. I think we should have that.
I think the 'pacman -S msys2-launcher' should work for older MSYS2
without upgrading other packages, but then again, maybe not. There's
no practical way of testing older versions in the rolling release
model.
I suppose mentioning the bat file shouldn't be too much trouble (see attached).
[-- Attachment #2: v2-0001-nt-INSTALL.W64-Use-mingw64.exe-instead-of-mingw64.patch --]
[-- Type: application/octet-stream, Size: 1157 bytes --]
From 5c0db728358dff0d801b49d6f17f93ec6044471b Mon Sep 17 00:00:00 2001
From: Noam Postavsky <npostavs@gmail.com>
Date: Thu, 12 Oct 2017 19:01:37 -0400
Subject: [PATCH v2] * nt/INSTALL.W64: Use mingw64.exe instead of
mingw64_shell.bat.
---
nt/INSTALL.W64 | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/nt/INSTALL.W64 b/nt/INSTALL.W64
index 841660b..651e3d5 100644
--- a/nt/INSTALL.W64
+++ b/nt/INSTALL.W64
@@ -125,9 +125,11 @@ put the Emacs source into C:\emacs\emacs-25:
Now you're ready to build and install Emacs with autogen, configure, make,
and make install.
-First we need to switch to the MinGW-w64 environment. Exit the MSYS2 BASH
-console and run mingw64_shell.bat in the C:\msys64 folder, then cd back to
-your Emacs source directory, e.g.:
+First we need to switch to the MinGW-w64 environment. Exit the MSYS2
+BASH console and run mingw64.exe in the C:\msys64 folder (if it's
+missing, install it with 'pacman -S msys2-launcher'. Or for very old
+installs which have mingw64_shell.bat, use that instead), then cd
+back to your Emacs source directory, e.g.:
cd /c/emacs/emacs-25
--
2.6.2.windows.1
^ permalink raw reply related [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 16:33 ` Noam Postavsky
@ 2017-10-13 17:24 ` Eli Zaretskii
2017-10-13 17:51 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-10-13 17:24 UTC (permalink / raw)
To: Noam Postavsky; +Cc: 28601, andrewjmoreton
> From: Noam Postavsky <npostavs@users.sourceforge.net>
> Date: Fri, 13 Oct 2017 12:33:51 -0400
> Cc: Andy Moreton <andrewjmoreton@gmail.com>, 28601@debbugs.gnu.org
>
> +First we need to switch to the MinGW-w64 environment. Exit the MSYS2
> +BASH console and run mingw64.exe in the C:\msys64 folder (if it's
> +missing, install it with 'pacman -S msys2-launcher'. Or for very old
> +installs which have mingw64_shell.bat, use that instead), then cd
> +back to your Emacs source directory, e.g.:
The punctuation inside the parentheses needs fixing (it shouldn't
start a new sentence). Otherwise, this is fine with me, thanks.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 17:24 ` Eli Zaretskii
@ 2017-10-13 17:51 ` Noam Postavsky
2017-10-13 18:35 ` Eli Zaretskii
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-10-13 17:51 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 28601, Andy Moreton
On Fri, Oct 13, 2017 at 1:24 PM, Eli Zaretskii <eliz@gnu.org> wrote:
> The punctuation inside the parentheses needs fixing (it shouldn't
> start a new sentence). Otherwise, this is fine with me, thanks.
Hmm, can we get away with a semicolon then?
First we need to switch to the MinGW-w64 environment. Exit the MSYS2
BASH console and run mingw64.exe in the C:\msys64 folder (if it's
missing, install it with 'pacman -S msys2-launcher'; or for very old
installs which have mingw64_shell.bat, use that instead), then cd
back to your Emacs source directory, e.g.:
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 17:51 ` Noam Postavsky
@ 2017-10-13 18:35 ` Eli Zaretskii
0 siblings, 0 replies; 48+ messages in thread
From: Eli Zaretskii @ 2017-10-13 18:35 UTC (permalink / raw)
To: Noam Postavsky; +Cc: 28601, andrewjmoreton
> From: Noam Postavsky <npostavs@users.sourceforge.net>
> Date: Fri, 13 Oct 2017 13:51:21 -0400
> Cc: Andy Moreton <andrewjmoreton@gmail.com>, 28601@debbugs.gnu.org
>
> On Fri, Oct 13, 2017 at 1:24 PM, Eli Zaretskii <eliz@gnu.org> wrote:
>
> > The punctuation inside the parentheses needs fixing (it shouldn't
> > start a new sentence). Otherwise, this is fine with me, thanks.
>
> Hmm, can we get away with a semicolon then?
Yes, that's exactly what I meant. Thanks.
^ permalink raw reply [flat|nested] 48+ messages in thread
* windows build help
2017-10-13 10:14 ` Andy Moreton
2017-10-13 12:22 ` Eli Zaretskii
@ 2017-10-13 18:52 ` Phillip Lord
2017-10-13 19:36 ` Óscar Fuentes
` (2 more replies)
1 sibling, 3 replies; 48+ messages in thread
From: Phillip Lord @ 2017-10-13 18:52 UTC (permalink / raw)
To: Emacs-Devel devel
I was just reading 28601@debbugs.gnu.org. I have a slightly related
problem and wonder if anyone could help.
Currently, I am building the windows binaries for Emacs using an
out-of-source build with a directory structure like this:
git/emacs-26.0.50
build/emacs-26.0.50/x86_64
build/emacs-26.0.50/i686
install/emacs-26.0.50/x86_64
install/emacs-26.0.50/i686
This works nicely, but some of the process is manual. I wanted to script
everything up to and including the creation of the final zip files --
currently, the entire build takes about an hour or two.
But I do the x86_64 building using the MINGW64 shell
(i.e. C:\msys64\mingw64.exe) and the i686 using MINGW32
(i.e. C:\msys64\mingw64.exe). You might have thought I could just used
one -- the build for the i686 would just be cross compiling. But, this
doesn't work because I get this from ./configure:
checking for struct ifreq.ifr_addr.sa_len... no
checking whether gcc understands -MMD -MF... no
checking for long file names... yes
checking for X... no
checking whether Windows API headers are recent enough... no
configure: error: the Windows API headers are too old to support this build.
So, I cannot do both builds with a single command -- I have to come back
in the middle. I don't really understand the difference between the two
shells nor why I get this error.
Another solution would be to run both builds in parallel; this fails,
unfortunately, because the "out-of-source" build is not entirely out of
source -- the .elc files are created in-source. If I launch both a 64
and 32 bit build at the same time, they fight for whole compiles what,
until one or both crash.
It's not a major issue, but I'd quite like to start providing emacs-27
snapshots every couple of weeks. It's not going to happen, if it takes
too much effort.
Any thoughts welcome.
Phil
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-13 18:52 ` windows build help Phillip Lord
@ 2017-10-13 19:36 ` Óscar Fuentes
2017-10-13 19:38 ` Stephen Leake
2017-10-13 19:47 ` Noam Postavsky
2 siblings, 0 replies; 48+ messages in thread
From: Óscar Fuentes @ 2017-10-13 19:36 UTC (permalink / raw)
To: emacs-devel
phillip.lord@russet.org.uk (Phillip Lord) writes:
> So, I cannot do both builds with a single command -- I have to come back
> in the middle. I don't really understand the difference between the two
> shells nor why I get this error.
Look at the scripts that start each shell. They setup some environment
variables. Mimic that on your script and you should be fine.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-13 18:52 ` windows build help Phillip Lord
2017-10-13 19:36 ` Óscar Fuentes
@ 2017-10-13 19:38 ` Stephen Leake
2017-10-14 11:07 ` Phillip Lord
2017-10-13 19:47 ` Noam Postavsky
2 siblings, 1 reply; 48+ messages in thread
From: Stephen Leake @ 2017-10-13 19:38 UTC (permalink / raw)
To: emacs-devel
phillip.lord@russet.org.uk (Phillip Lord) writes:
> Another solution would be to run both builds in parallel; this fails,
> unfortunately, because the "out-of-source" build is not entirely out of
> source -- the .elc files are created in-source. If I launch both a 64
> and 32 bit build at the same time, they fight for whole compiles what,
> until one or both crash.
Have two source checkouts. then you could also build in-source, although
I doubt that makes much difference.
--
-- Stephe
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-13 18:52 ` windows build help Phillip Lord
2017-10-13 19:36 ` Óscar Fuentes
2017-10-13 19:38 ` Stephen Leake
@ 2017-10-13 19:47 ` Noam Postavsky
2017-10-14 11:09 ` Phillip Lord
2 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-10-13 19:47 UTC (permalink / raw)
To: Phillip Lord; +Cc: Emacs-Devel devel
On Fri, Oct 13, 2017 at 2:52 PM, Phillip Lord
<phillip.lord@russet.org.uk> wrote:
> But I do the x86_64 building using the MINGW64 shell
> (i.e. C:\msys64\mingw64.exe) and the i686 using MINGW32
> (i.e. C:\msys64\mingw64.exe). You might have thought I could just used
> one -- the build for the i686 would just be cross compiling.
AFAIK, emacs doesn't support cross compiling.
> So, I cannot do both builds with a single command -- I have to come back
> in the middle. I don't really understand the difference between the two
> shells nor why I get this error.
I think the only difference is PATH has /mingw32/bin or /mingw64/bin,
and MSYSTEM is MINGW32 or MINGW64
At least for me, after doing
PATH=/mingw32/bin:$PATH
MSYSTEM=MINGW32
in a mingw64 shell, doing ./configure succeeds and I end up with a 32bit emacs.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-13 14:16 ` Noam Postavsky
@ 2017-10-14 1:40 ` Noam Postavsky
2017-10-16 8:59 ` Vincent Belaïche
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-10-14 1:40 UTC (permalink / raw)
To: Vincent Belaïche; +Cc: 28601
Noam Postavsky <npostavs@users.sourceforge.net> writes:
> On Fri, Oct 13, 2017 at 10:09 AM, Vincent Belaïche
> <vincent.belaiche@gmail.com> wrote:
>
>> Please note that gcc -v makes this output even though my MSYSTEM envvar
>> expands to MINGW64.
>>
>> I think that the objective of the gcc -v is to discriminate between 32
>> and 64 bits, not between MINGW and MSYS. So, it seems that what we have
>> is an autoconf bug. Am I wrong ?
>
> I think it means you didn't install the mingw-w64-x86_64-toolchain
> metapackage, so you are using the msys toolchain rather than the mingw
> one.
Check the output of 'which gcc', it should be at /mingw64/bin/gcc. If
it's /bin/gcc, or /usr/bin/gcc, then you are using the wrong gcc.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-13 19:38 ` Stephen Leake
@ 2017-10-14 11:07 ` Phillip Lord
2017-10-14 15:15 ` Stephen Leake
0 siblings, 1 reply; 48+ messages in thread
From: Phillip Lord @ 2017-10-14 11:07 UTC (permalink / raw)
To: Stephen Leake; +Cc: emacs-devel
Stephen Leake <stephen_leake@stephe-leake.org> writes:
> phillip.lord@russet.org.uk (Phillip Lord) writes:
>
>> Another solution would be to run both builds in parallel; this fails,
>> unfortunately, because the "out-of-source" build is not entirely out of
>> source -- the .elc files are created in-source. If I launch both a 64
>> and 32 bit build at the same time, they fight for whole compiles what,
>> until one or both crash.
>
> Have two source checkouts. then you could also build in-source, although
> I doubt that makes much difference.
I thought about that, but the reason against it is that it takes much
longer, because I have to build the elc twice.
Phil
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-13 19:47 ` Noam Postavsky
@ 2017-10-14 11:09 ` Phillip Lord
0 siblings, 0 replies; 48+ messages in thread
From: Phillip Lord @ 2017-10-14 11:09 UTC (permalink / raw)
To: Noam Postavsky; +Cc: Emacs-Devel devel
Noam Postavsky <npostavs@users.sourceforge.net> writes:
> On Fri, Oct 13, 2017 at 2:52 PM, Phillip Lord
> <phillip.lord@russet.org.uk> wrote:
>
>> But I do the x86_64 building using the MINGW64 shell
>> (i.e. C:\msys64\mingw64.exe) and the i686 using MINGW32
>> (i.e. C:\msys64\mingw64.exe). You might have thought I could just used
>> one -- the build for the i686 would just be cross compiling.
>
> AFAIK, emacs doesn't support cross compiling.
I assumed that only GCC needed to do this (assuming that the emacs
produced can run on the current system).
>
>> So, I cannot do both builds with a single command -- I have to come back
>> in the middle. I don't really understand the difference between the two
>> shells nor why I get this error.
>
> I think the only difference is PATH has /mingw32/bin or /mingw64/bin,
> and MSYSTEM is MINGW32 or MINGW64
>
> At least for me, after doing
>
> PATH=/mingw32/bin:$PATH
> MSYSTEM=MINGW32
>
> in a mingw64 shell, doing ./configure succeeds and I end up with a
> 32bit emacs.
Yep, that's all you need. Thank you very much!
Phil
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-14 11:07 ` Phillip Lord
@ 2017-10-14 15:15 ` Stephen Leake
2017-10-14 15:26 ` Phillip Lord
` (2 more replies)
0 siblings, 3 replies; 48+ messages in thread
From: Stephen Leake @ 2017-10-14 15:15 UTC (permalink / raw)
To: emacs-devel
phillip.lord@russet.org.uk (Phillip Lord) writes:
> Stephen Leake <stephen_leake@stephe-leake.org> writes:
>
>> phillip.lord@russet.org.uk (Phillip Lord) writes:
>>
>>> Another solution would be to run both builds in parallel; this fails,
>>> unfortunately, because the "out-of-source" build is not entirely out of
>>> source -- the .elc files are created in-source. If I launch both a 64
>>> and 32 bit build at the same time, they fight for whole compiles what,
>>> until one or both crash.
>>
>> Have two source checkouts. then you could also build in-source, although
>> I doubt that makes much difference.
>
> I thought about that, but the reason against it is that it takes much
> longer, because I have to build the elc twice.
Hmm. You are implying that the elc built for 32 bit emacs are identical
to the elc built for 64 bit emacs.
Is that true? I would have guessed that most objects are either
32 bit or 64 bit; elisp manual 3.1 says the integer range depends on the
machine, and pointers should also.
If they are the same, then you should be able to write a script that
does:
1) parallel make to build elc using 32 bit
2) parallel make to build everything else, both 32 bit and 64 bit.
--
-- Stephe
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-14 15:15 ` Stephen Leake
@ 2017-10-14 15:26 ` Phillip Lord
2017-10-14 15:31 ` Eli Zaretskii
2017-10-14 23:04 ` Paul Eggert
2 siblings, 0 replies; 48+ messages in thread
From: Phillip Lord @ 2017-10-14 15:26 UTC (permalink / raw)
To: Stephen Leake; +Cc: emacs-devel
Stephen Leake <stephen_leake@stephe-leake.org> writes:
> phillip.lord@russet.org.uk (Phillip Lord) writes:
>
>> Stephen Leake <stephen_leake@stephe-leake.org> writes:
>>
>>> phillip.lord@russet.org.uk (Phillip Lord) writes:
>>>
>>>> Another solution would be to run both builds in parallel; this fails,
>>>> unfortunately, because the "out-of-source" build is not entirely out of
>>>> source -- the .elc files are created in-source. If I launch both a 64
>>>> and 32 bit build at the same time, they fight for whole compiles what,
>>>> until one or both crash.
>>>
>>> Have two source checkouts. then you could also build in-source, although
>>> I doubt that makes much difference.
>>
>> I thought about that, but the reason against it is that it takes much
>> longer, because I have to build the elc twice.
>
> Hmm. You are implying that the elc built for 32 bit emacs are identical
> to the elc built for 64 bit emacs.
>
> Is that true? I would have guessed that most objects are either
> 32 bit or 64 bit; elisp manual 3.1 says the integer range depends on the
> machine, and pointers should also.
Yes, I believe that they are. In fact, the source tar-ball includes the
ELC files, when it's possible to build from source on many different
platforms.
I use to build both 32 and 64 totally form source (i.e. without ELC),
but haven't done for I think all of Emacs-25.
> If they are the same, then you should be able to write a script that
> does:
>
> 1) parallel make to build elc using 32 bit
> 2) parallel make to build everything else, both 32 bit and 64 bit.
I have this now, thanks to comments in this thread. I do, parallel build
of 64 bit, then parallel build of 32 bit. The ELC build happens during
the 64, although it could happen either way.
Phil
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-14 15:15 ` Stephen Leake
2017-10-14 15:26 ` Phillip Lord
@ 2017-10-14 15:31 ` Eli Zaretskii
2017-10-14 23:04 ` Paul Eggert
2 siblings, 0 replies; 48+ messages in thread
From: Eli Zaretskii @ 2017-10-14 15:31 UTC (permalink / raw)
To: Stephen Leake; +Cc: emacs-devel
> From: Stephen Leake <stephen_leake@stephe-leake.org>
> Date: Sat, 14 Oct 2017 10:15:41 -0500
>
> Hmm. You are implying that the elc built for 32 bit emacs are identical
> to the elc built for 64 bit emacs.
>
> Is that true?
Yes.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-14 15:15 ` Stephen Leake
2017-10-14 15:26 ` Phillip Lord
2017-10-14 15:31 ` Eli Zaretskii
@ 2017-10-14 23:04 ` Paul Eggert
2017-10-16 1:53 ` Richard Stallman
2 siblings, 1 reply; 48+ messages in thread
From: Paul Eggert @ 2017-10-14 23:04 UTC (permalink / raw)
To: Stephen Leake, emacs-devel
Stephen Leake wrote:
> You are implying that the elc built for 32 bit emacs are identical
> to the elc built for 64 bit emacs.
Although one can write Elisp code that compiles to different .elc files
depending whether the compiling Emacs is built for a 32 or 64 bit machine, such
Elisp code is unportable and the GNU Emacs source code does not do that, as far
as I know. (It might be nice if we routinely tested for such portability bugs.)
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-14 23:04 ` Paul Eggert
@ 2017-10-16 1:53 ` Richard Stallman
2017-10-16 6:49 ` Paul Eggert
0 siblings, 1 reply; 48+ messages in thread
From: Richard Stallman @ 2017-10-16 1:53 UTC (permalink / raw)
To: Paul Eggert; +Cc: stephen_leake, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> Although one can write Elisp code that compiles to different .elc files
> depending whether the compiling Emacs is built for a 32 or 64 bit machine,
Just for curiosity's sake, would anyone like to tell me what circumstances
this happens in?
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-16 1:53 ` Richard Stallman
@ 2017-10-16 6:49 ` Paul Eggert
2017-10-16 13:54 ` Stefan Monnier
0 siblings, 1 reply; 48+ messages in thread
From: Paul Eggert @ 2017-10-16 6:49 UTC (permalink / raw)
To: rms; +Cc: stephen_leake, emacs-devel
> > one can write Elisp code that compiles to different .elc files
> > depending whether the compiling Emacs is built for a 32 or 64 bit machine,
>
> Just for curiosity's sake, would anyone like to tell me what circumstances
> this happens in?
For example, given this source code:
(defconst x (* 32768 32768))
On a 64-bit machine, byte-compiling generates an .elc file containing this:
(defconst x 1073741824)
On a 32-bit machine, byte-compiling the same source code generates an .elc file
containing this instead:
(defconst x 0)
due to multiplication overflow in this Emacs's integers, which use 30-bit two's
complement. Each .elc file is correct for the Emacs it is built with, but
incorrect for the other Emacs.
GNU Emacs source code should not do this sort of thing, since the .elc files
distributed in its tarballs are supposed to be portable.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-14 1:40 ` Noam Postavsky
@ 2017-10-16 8:59 ` Vincent Belaïche
2017-10-16 14:23 ` Noam Postavsky
2017-10-16 16:19 ` Eli Zaretskii
0 siblings, 2 replies; 48+ messages in thread
From: Vincent Belaïche @ 2017-10-16 8:59 UTC (permalink / raw)
To: Noam Postavsky; +Cc: 28601, Vincent Belaïche
[-- Attachment #1: Type: text/plain, Size: 1178 bytes --]
Dear Noam,
Le 14/10/2017 à 03:40, Noam Postavsky a écrit :
> Noam Postavsky <npostavs@users.sourceforge.net> writes:
>
>> On Fri, Oct 13, 2017 at 10:09 AM, Vincent Belaïche
>> <vincent.belaiche@gmail.com> wrote:
>>
>>> Please note that gcc -v makes this output even though my MSYSTEM envvar
>>> expands to MINGW64.
>>>
>>> I think that the objective of the gcc -v is to discriminate between 32
>>> and 64 bits, not between MINGW and MSYS. So, it seems that what we have
>>> is an autoconf bug. Am I wrong ?
>>
>> I think it means you didn't install the mingw-w64-x86_64-toolchain
>> metapackage, so you are using the msys toolchain rather than the mingw
>> one.
>
> Check the output of 'which gcc', it should be at /mingw64/bin/gcc. If
> it's /bin/gcc, or /usr/bin/gcc, then you are using the wrong gcc.
I managed to build Emacs thanks ot your kind help.
I attached a patch to INSTALL.W64 to collect all the instruction needed
in my case to install Emacs.
Please feel free for brickbat.
Vincent.
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: INSTALL.W64.diff --]
[-- Type: text/x-patch, Size: 7923 bytes --]
diff --git a/nt/INSTALL.W64 b/nt/INSTALL.W64
index 4a93dc0..b28540d 100644
--- a/nt/INSTALL.W64
+++ b/nt/INSTALL.W64
@@ -29,24 +29,35 @@ build tools for MinGW-w64 -- see http://msys2.github.io/.
You can download the x86_64 version of MSYS2 (i.e. msys2-x86_64-<date>.exe)
from
- https://sourceforge.net/projects/msys2/files/Base/x86_64
+ https://sourceforge.net/projects/msys2/files/Base/x86_64
Run this file to install MSYS2 in your preferred directory, e.g. the default
C:\msys64 -- this will install MinGW-w64 also. Note that directory names
containing spaces may cause problems.
+In the sequel we denote by c:\MSYS\INSTALL\DIR\msys64 the
+directory where MSYS2 is installed, e.g. C:\msys64 by default.
+
+* Configure your MSWindows PATH variable
+
Then you'll need to add the following directories to your Windows PATH
environment variable:
- c:\msys64\usr\bin;c:\msys64\mingw64\bin
+ c:\MSYS\INSTALL\DIR\msys64\usr\bin;c:\MSYS\INSTALL\DIR\msys64\mingw64\bin
+
+where c:\MSYS\INSTALL\DIR\msys64 depends on your MSYS2 installation,
+and is c:\msys64 by default.
-you can do this through Control Panel / System and Security / System /
+You can do this through Control Panel / System and Security / System /
Advanced system settings / Environment Variables / Edit path.
Adding these directories to your PATH tells Emacs where to find the DLLs it
needs to run, and some optional commands like grep and find. These commands
will also be available at the Windows console.
+Concerning the find command see also the last step about configuring
+your init file to get an MSWindows find port.
+
** Download and install the necessary packages
Run msys2_shell.bat in your MSYS2 directory and you will see a BASH window
@@ -55,25 +66,86 @@ opened.
In the BASH prompt, use the following command to install the necessary
packages (you can copy and paste it into the shell with Shift + Insert):
- pacman -S base-devel \
- mingw-w64-x86_64-toolchain \
- mingw-w64-x86_64-xpm-nox \
- mingw-w64-x86_64-libtiff \
- mingw-w64-x86_64-giflib \
- mingw-w64-x86_64-libpng \
- mingw-w64-x86_64-libjpeg-turbo \
- mingw-w64-x86_64-librsvg \
- mingw-w64-x86_64-liblcms2 \
- mingw-w64-x86_64-libxml2 \
- mingw-w64-x86_64-gnutls \
- mingw-w64-x86_64-zlib
-
-The packages include the base developer tools (autoconf, grep, make, etc.),
-the compiler toolchain (gcc, gdb, etc.), several image libraries, an XML
-library, the GnuTLS (transport layer security) library, and zlib for
-decompressing text. Only the first three packages are required (base-devel,
-toolchain, xpm-nox); the rest are optional. You can select only part of the
-libraries if you don't need them all.
+ for w in msys/msys2-launcher-git \
+ msys/m4 \
+ msys/autoconf \
+ msys/grep \
+ msys/findutils \
+ mingw64/mingw-w64-x86_64-pkg-config \
+ mingw64/mingw-w64-x86_64-make \
+ mingw64/mingw-w64-x86_64-toolchain \
+ mingw64/mingw-w64-x86_64-xpm-nox \
+ mingw64/mingw-w64-x86_64-libtiff \
+ mingw64/mingw-w64-x86_64-giflib \
+ mingw64/mingw-w64-x86_64-libpng \
+ mingw64/mingw-w64-x86_64-libjpeg-turbo \
+ mingw64/mingw-w64-x86_64-librsvg \
+ mingw64/mingw-w64-x86_64-liblcms2 \
+ mingw64/mingw-w64-x86_64-libxml2 \
+ mingw64/mingw-w64-x86_64-gnutls \
+ mingw64/mingw-w64-x86_64-zlib; do pacman -S $w; done
+
+Answer Y (for yes) to all questions when the package is not up to
+date, and n (for no) otherwise.
+
+The packages include the base developer tools (autoconf, grep, make,
+etc.), the compiler toolchain (gcc, gdb, etc.), several image
+libraries, an XML library, the GnuTLS (transport layer security)
+library, and zlib for decompressing text. Only the packages up to
+xpm-nox are required; the rest are optional. You can select only part
+of the libraries if you don't need them all.
+
+** Check your MSYS2 fstab file
+
+make sure that your fstab file (c:\MSYS\INSTALL\DIR\msys64\etc\fstab)
+file contains the following lines (starting a column 0 in the fstab
+file):
+
+ c:/MSYS/INSTALL/DIR/msys64/mingw64/bin /mingw64/bin ntfs binary,noacl 0 0
+ c:/MSYS/INSTALL/DIR/msys64/mingw32/bin /mingw32/bin ntfs binary,noacl 0 0
+
+Please note that only the first line is needed for 64bit compilation,
+the second one is for a complete fstab file w.r.t. 32bit compilation.
+
+If there is a space in c:\MSYS\INSTALL\DIR it shall be replaced by
+\040. For instance, if MSYS is installed under "C:\Program
+Files\msys64" there must be this line:
+
+
+ C:/Program\040Files/msys64/mingw64/bin /mingw64/bin ntfs binary,noacl 0 0
+
+Anyway, avoiding to have any space in the path is preferable.
+
+** Configure your MSYS2 PATH variable for application running from an mingw64 console
+
+When you launch the mingw64.exe console from the c:\MSYS\INSTALL\DIR\msys64, and type
+
+ echo "$PATH"
+
+You must have /mingw64/bin and /usr/bin in the paths list in this order.
+
+Otherwise, you will need to exit the MINGW64 console and edit your
+~/.bashrc file, where ~ denote
+c:\MSYS\INSTALL\DIR\msys64\home\%USERNAME%, to have the correct PATH
+variable from MSYS/MINGW32/MINGW64 consoles:
+
+In this cas, please make sure that ~/.bashrc contains some statement
+like:
+
+ case x$MSYSTEM in
+ xMINGW64)
+ PATH="/mingw64/bin:/usr/bin:$PATH"
+ ;;
+ xMINGW32)
+ PATH="/mingw32/bin:/usr/bin:$PATH"
+ ;;
+ xMSYS)
+ PATH="/usr/bin:$PATH"
+ ;;
+ esac
+
+Actually, for the Emacs build only the MINGW64 is useful. There could
+other cases for MSYSTEM envvar equal to MSYS or to MINGW32.
You now have a complete build environment for Emacs.
@@ -125,9 +197,9 @@ put the Emacs source into C:\emacs\emacs-26:
Now you're ready to build and install Emacs with autogen, configure, make,
and make install.
-First we need to switch to the MinGW-w64 environment. Exit the MSYS2 BASH
-console and run mingw64_shell.bat in the C:\msys64 folder, then cd back to
-your Emacs source directory, e.g.:
+First we need to switch to the MinGW-w64 environment. Exit the MSYS2
+BASH console and run mingw64.exe in the C:\MSYS\INSTALL\DIR\msys64
+folder, then cd back to your Emacs source directory, e.g.:
cd /c/emacs/emacs-26
@@ -202,6 +274,40 @@ You can set any command line options by right clicking on the resulting
shortcut, select Properties, then add any options to the Target command,
e.g. --debug-init.
+* Configure your init file for Emacs to get a findutils windows port
+
+As far as find is concerned, at this stage you have configured the
+MSWindows PATH envvar to have c:\MSYS\INSTALL\DIR\msys64\usr\bin in
+it.
+
+You should have done that in a way that
+c:\MSYS\INSTALL\DIR\msys64\usr\bin is after C:\Windows\System32 in the
+PATH, otherwise the MSYS2 find.exe will be used instead of the
+MSWindows find.exe by other MSWindows application and this may cause
+some problem in your MSWindows environment --- although nobody has
+ever reported such a trouble.
+
+As far as Emacs is concerned, the lasy way is to use the MSYS2 find
+utility despit the PATH envvar by setting in your init file the
+following:
+
+ (setq grep-program "c:/MSYS/INSTALL/DIR/msys64/usr/bin/find.exe")
+
+Actually, it is better to work a little bit more and use a MSWindows
+port rather than the MSYS find. See why here
+https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27393
+
+For instance this port can be used.
+
+https://sourceforge.net/projects/ezwinports/files/findutils-4.2.30-5-w64-bin.zip/download
+
+Then add to your init file lines like these :
+
+ (setq find-program "c:/PATH/TO/FIND/PORT/find.exe")
+
+where "c:/PATH/TO/FIND/PORT/" is the place where you have installed
+this find MSWindows port.
+
* Credits
Thanks to Chris Zheng for the original build outline as used by the
@@ -225,3 +331,4 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
+
^ permalink raw reply related [flat|nested] 48+ messages in thread
* Re: windows build help
2017-10-16 6:49 ` Paul Eggert
@ 2017-10-16 13:54 ` Stefan Monnier
0 siblings, 0 replies; 48+ messages in thread
From: Stefan Monnier @ 2017-10-16 13:54 UTC (permalink / raw)
To: emacs-devel
> (defconst x (* 32768 32768))
Indeed. This one is arguably undesirable.
But there are more direct ones, where you can't similarly argue that
it's a limitation in Elisp:
(defconst foo-build-system (eval-when-compile system-configuration))
-- Stefan
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-16 8:59 ` Vincent Belaïche
@ 2017-10-16 14:23 ` Noam Postavsky
2017-10-16 17:11 ` Vincent Belaïche
2017-10-16 16:19 ` Eli Zaretskii
1 sibling, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-10-16 14:23 UTC (permalink / raw)
To: Vincent Belaïche; +Cc: 28601
On Mon, Oct 16, 2017 at 4:59 AM, Vincent Belaïche
<vincent.belaiche@gmail.com> wrote:
> I attached a patch to INSTALL.W64 to collect all the instruction needed
> in my case to install Emacs.
> +In the sequel we denote by c:\MSYS\INSTALL\DIR\msys64 the
> +directory where MSYS2 is installed, e.g. C:\msys64 by default.
I think just using the default C:\msys64 might be clearer than using
this kind of meta-syntax.
> +
> +* Configure your MSWindows PATH variable
> +
> Then you'll need to add the following directories to your Windows PATH
> environment variable:
>
> - c:\msys64\usr\bin;c:\msys64\mingw64\bin
> + c:\MSYS\INSTALL\DIR\msys64\usr\bin;c:\MSYS\INSTALL\DIR\msys64\mingw64\bin
> +
> +where c:\MSYS\INSTALL\DIR\msys64 depends on your MSYS2 installation,
> +and is c:\msys64 by default.
>
> -you can do this through Control Panel / System and Security / System /
> +You can do this through Control Panel / System and Security / System /
> Advanced system settings / Environment Variables / Edit path.
>
> Adding these directories to your PATH tells Emacs where to find the DLLs it
> needs to run, and some optional commands like grep and find. These commands
> will also be available at the Windows console.
>
> +Concerning the find command see also the last step about configuring
> +your init file to get an MSWindows find port.
> +
Actually I never changed my Windows PATH. Running Emacs 25 outside of
the MSYS2 environment complains about not finding libwinpthread-1.dll,
but Emacs 26 works fine. Perhaps we can just remove this section
entirely?
> ** Download and install the necessary packages
> + for w in msys/msys2-launcher-git \
Is there some reason you changed to a for loop?
> +** Check your MSYS2 fstab file
Do you mean that your fstab file was broken somehow? I never even
looked at mine.
> +Otherwise, you will need to exit the MINGW64 console and edit your
> +~/.bashrc file, where ~ denote
> +c:\MSYS\INSTALL\DIR\msys64\home\%USERNAME%, to have the correct PATH
> +variable from MSYS/MINGW32/MINGW64 consoles:
> +
> +In this cas, please make sure that ~/.bashrc contains some statement
> +like:
Do you mean you needed to modify your ~/.bashrc to get the correct
PATH under mingw64.exe? It should already be set correctly by
/etc/profile.
Perhaps we can put this under a "Troubleshooting" section at the end.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-16 8:59 ` Vincent Belaïche
2017-10-16 14:23 ` Noam Postavsky
@ 2017-10-16 16:19 ` Eli Zaretskii
1 sibling, 0 replies; 48+ messages in thread
From: Eli Zaretskii @ 2017-10-16 16:19 UTC (permalink / raw)
To: Vincent Belaïche; +Cc: 28601, npostavs
> From: vincent.belaiche@gmail.com (Vincent Belaïche)
> Cc: Vincent Belaïche <vincent.belaiche@gmail.com> , Glenn
> Morris <rgm@gnu.org>,
> Eli Zaretskii <eliz@gnu.org>, 28601@debbugs.gnu.org
> Date: Mon, 16 Oct 2017 10:59:58 +0200
>
> I attached a patch to INSTALL.W64 to collect all the instruction needed
> in my case to install Emacs.
Thanks, but I wonder how come such a large change is needed for
something that sounds like a simple problem with PATH. Some of the
changes seem just style or change commands to equivalent ones.
Can you explain what exactly was the problem and how you solved it?
We can then discuss what needs to be changed in the instructions as
written.
Thanks.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-16 14:23 ` Noam Postavsky
@ 2017-10-16 17:11 ` Vincent Belaïche
2017-10-16 21:42 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Vincent Belaïche @ 2017-10-16 17:11 UTC (permalink / raw)
To: Noam Postavsky; +Cc: 28601, Vincent Belaïche
Dear Noam,
Answers embedded below...
Le 16/10/2017 à 16:23, Noam Postavsky a écrit :
> On Mon, Oct 16, 2017 at 4:59 AM, Vincent Belaïche
> <vincent.belaiche@gmail.com> wrote:
>
>> I attached a patch to INSTALL.W64 to collect all the instruction needed
>> in my case to install Emacs.
>
>> +In the sequel we denote by c:\MSYS\INSTALL\DIR\msys64 the
>> +directory where MSYS2 is installed, e.g. C:\msys64 by default.
>
> I think just using the default C:\msys64 might be clearer than using
> this kind of meta-syntax.
>
OK, I will revise that.
>> +
>> +* Configure your MSWindows PATH variable
>> +
>> Then you'll need to add the following directories to your Windows PATH
>> environment variable:
>>
>> - c:\msys64\usr\bin;c:\msys64\mingw64\bin
>> + c:\MSYS\INSTALL\DIR\msys64\usr\bin;c:\MSYS\INSTALL\DIR\msys64\mingw64\bin
>> +
>> +where c:\MSYS\INSTALL\DIR\msys64 depends on your MSYS2 installation,
>> +and is c:\msys64 by default.
>>
>> -you can do this through Control Panel / System and Security / System /
>> +You can do this through Control Panel / System and Security / System /
>> Advanced system settings / Environment Variables / Edit path.
>>
>> Adding these directories to your PATH tells Emacs where to find the DLLs it
>> needs to run, and some optional commands like grep and find. These commands
>> will also be available at the Windows console.
>>
>> +Concerning the find command see also the last step about configuring
>> +your init file to get an MSWindows find port.
>> +
>
> Actually I never changed my Windows PATH. Running Emacs 25 outside of
> the MSYS2 environment complains about not finding libwinpthread-1.dll,
> but Emacs 26 works fine. Perhaps we can just remove this section
> entirely?
>
I does not work for me if I don't change MSWindows PATH. But the text
needs revision anyway because it does not say what has to be
ensured.
What happens for me is that c:\MSYS\INSTALL\DIR\msys64\mingw64\bin has
to be high enough in the path list, otherwise Emacs gets frozen on
start.
I have not fully identified how high it has to be. It seems that if it
is not before c:\Perl64\site\bin then the freeze happens (to be
confirmed by more tests). c:\Perl64\site\bin is some ActiveState native
perl implementation which contains a gcc.exe executable but no DLL's.
>> ** Download and install the necessary packages
>
>> + for w in msys/msys2-launcher-git \
>
> Is there some reason you changed to a for loop?
>
Yes, I had some packages already installed, and if I just type
pacman -S msys/msys2-launcher-git \
msys/m4 \
msys/autoconf \
msys/grep \
msys/findutils \
mingw64/mingw-w64-x86_64-pkg-config \
mingw64/mingw-w64-x86_64-make \
mingw64/mingw-w64-x86_64-toolchain \
mingw64/mingw-w64-x86_64-xpm-nox \
mingw64/mingw-w64-x86_64-libtiff \
mingw64/mingw-w64-x86_64-giflib \
mingw64/mingw-w64-x86_64-libpng \
mingw64/mingw-w64-x86_64-libjpeg-turbo \
mingw64/mingw-w64-x86_64-librsvg \
mingw64/mingw-w64-x86_64-liblcms2 \
mingw64/mingw-w64-x86_64-libxml2 \
mingw64/mingw-w64-x86_64-gnutls \
mingw64/mingw-w64-x86_64-zlib
and I type ENTER for defaulting to « all » then it seems that pacman
does not really re-install anything. With a look thing are handled one
by one more cleanly, and it is easier for the user to discriminate.
I must admit that I have not really checked that nothing is
re-installed: it is just that after ENTER pacman exits immediatly with
saying that it is reinstalled, but I cannot believe that it was done in
almost no time.
>> +** Check your MSYS2 fstab file
>
> Do you mean that your fstab file was broken somehow? I never even
> looked at mine.
MSYS2 was already installed for me some time ago, because I needed a
more recent GNU-make to generate some LaTeX package distribution (the
MSYS1 GNU-Make is bogous with memort handling). So I had already edited
manually the fstab to mount MiKTeX binary directory to /miktex/bin and
have this /miktex/bin in my PATH as set by my ~/.bashrc.
It seems that having done that prevent MSYS2 pacman to update the fstab
when mingw64 stuff is added --- or maybe pacman never tampers with the
fstab, and the /mingw64 mount point was added later than the time when I
installed MSYS2.
>
>> +Otherwise, you will need to exit the MINGW64 console and edit your
>> +~/.bashrc file, where ~ denote
>> +c:\MSYS\INSTALL\DIR\msys64\home\%USERNAME%, to have the correct PATH
>> +variable from MSYS/MINGW32/MINGW64 consoles:
>> +
>> +In this cas, please make sure that ~/.bashrc contains some statement
>> +like:
>
> Do you mean you needed to modify your ~/.bashrc to get the correct
> PATH under mingw64.exe? It should already be set correctly by
> /etc/profile.
>
Well, I have tampered with the original msys2_shell.cmd (what
pre-existed before the launchers were made available) in order to
activate MSWindows native symlinks when I open an MSYS2 console.
See https://github.com/msys2/msys2/issues/71
This works fine, but for some reason when I do that (which amounts to
launching the MSYS2 console through the COM "Shell.Application" with the
"runas" method) then the MSYS2 PATH is the same as my MSWindows PATH (so
it does not contain the /usr/bin etc...). So, to work around this, my
~/.bashrc sets the PATH from scratch w/o using the value at bash
start-up.
This means that whether I use mingw64.exe, mingw32.exe or msys2.exe does
not make any difference to me, and only the ~/.bashrc matters.
Reading again my modified msys2_shell.cmd script and the profile script,
I think that this issue arose from MSYS2_PATH_TYPE not being exported to
the process env that contains the lauched console. This is because all
the msys2_shell.cmd is under setlocal regime.
Anyway, as you see it is better if the user check that the PATH is
correctly set in case that, like me the ~/.bashrc makes some tricks.
> Perhaps we can put this under a "Troubleshooting" section at the end.
Yes, I agree that I was a little naughty, and my troubles were partly
caused by too much hacking.
Vincent.
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-16 17:11 ` Vincent Belaïche
@ 2017-10-16 21:42 ` Noam Postavsky
2017-10-19 8:25 ` Vincent Belaïche
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-10-16 21:42 UTC (permalink / raw)
To: Vincent Belaïche; +Cc: 28601
On Mon, Oct 16, 2017 at 1:11 PM, Vincent Belaïche
<vincent.belaiche@gmail.com> wrote:
> I does not work for me if I don't change MSWindows PATH. But the text
> needs revision anyway because it does not say what has to be
> ensured.
>
> What happens for me is that c:\MSYS\INSTALL\DIR\msys64\mingw64\bin has
> to be high enough in the path list, otherwise Emacs gets frozen on
> start.
>
> I have not fully identified how high it has to be. It seems that if it
> is not before c:\Perl64\site\bin then the freeze happens (to be
> confirmed by more tests). c:\Perl64\site\bin is some ActiveState native
> perl implementation which contains a gcc.exe executable but no DLL's.
I tried installing ActiveState perl, it adds this directory to PATH,
but the directory is empty (so of course there is no effect).
>> Is there some reason you changed to a for loop?
>>
>
> Yes, I had some packages already installed, and if I just type
>
> pacman -S msys/msys2-launcher-git \
> msys/m4 \
> msys/autoconf \
[...]
>
> and I type ENTER for defaulting to « all » then it seems that pacman
> does not really re-install anything. With a look thing are handled one
> by one more cleanly, and it is easier for the user to discriminate.
Yes, it seems that it hits an error trying to install
mingw64/mingw-w64-x86_64-liblcms2, and then just quits. The error is
somewhat lost in the noise:
error: target not found: mingw-w64-x86_64-liblcms2
It seems the name must be updated to mingw-w64-x86_64-lcms2.
A drawback of the for loop method is that it is difficult to abort,
even hitting Ctrl+C doesn't stop the loop, you have to hit it again
for each package.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-16 21:42 ` Noam Postavsky
@ 2017-10-19 8:25 ` Vincent Belaïche
2017-11-08 2:37 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Vincent Belaïche @ 2017-10-19 8:25 UTC (permalink / raw)
To: Noam Postavsky; +Cc: 28601, Vincent Belaïche
[-- Attachment #1: Type: text/plain, Size: 9084 bytes --]
Answers inserted below...
Le 16/10/2017 à 23:42, Noam Postavsky a écrit :
> On Mon, Oct 16, 2017 at 1:11 PM, Vincent Belaïche
> <vincent.belaiche@gmail.com> wrote:
>
>> I does not work for me if I don't change MSWindows PATH. But the text
>> needs revision anyway because it does not say what has to be
>> ensured.
>>
>> What happens for me is that c:\MSYS\INSTALL\DIR\msys64\mingw64\bin has
>> to be high enough in the path list, otherwise Emacs gets frozen on
>> start.
>>
>> I have not fully identified how high it has to be. It seems that if it
>> is not before c:\Perl64\site\bin then the freeze happens (to be
>> confirmed by more tests). c:\Perl64\site\bin is some ActiveState native
>> perl implementation which contains a gcc.exe executable but no DLL's.
>
> I tried installing ActiveState perl, it adds this directory to PATH,
> but the directory is empty (so of course there is no effect).
Yes, this directory gets filled when you launch cpan, and install some
module which I can't remember. Anyway, ActiveState is not to be blamed,
I was a bit too quick in speculating that. After some dichotomy on the
position of c:\msys64\mingw64\bin in the PATH I found that the conflict
is with some c:\...\gtk\bin directory the content of which is as
follows:
--8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
c:\Nos_Programmes\gtk\bin>dir
dir
Le volume dans le lecteur C n’a pas de nom.
Le numéro de série du volume est AC5E-0292
Répertoire de c:\Nos_Programmes\gtk\bin
18/05/2015 12:12 <DIR> .
18/05/2015 12:12 <DIR> ..
01/12/2013 14:25 24 525 autopoint
01/12/2013 14:38 1 538 croco-0.6-config
01/12/2013 14:25 143 837 envsubst.exe
01/12/2013 14:32 75 043 fc-cache.exe
01/12/2013 14:32 73 222 fc-cat.exe
01/12/2013 14:32 69 653 fc-list.exe
01/12/2013 14:32 71 841 fc-match.exe
01/12/2013 14:32 69 673 fc-pattern.exe
01/12/2013 14:32 68 340 fc-query.exe
01/12/2013 14:32 69 271 fc-scan.exe
01/12/2013 14:32 3 847 freetype-config
01/12/2013 14:31 1 380 gdbus-codegen
01/12/2013 14:31 105 157 gdbus.exe
01/12/2013 14:37 66 211 gdk-pixbuf-csource.exe
01/12/2013 14:37 64 161 gdk-pixbuf-pixdata.exe
01/12/2013 14:37 70 492 gdk-pixbuf-query-loaders.exe
01/12/2013 14:25 142 760 gettext.exe
01/12/2013 14:25 4 616 gettext.sh
01/12/2013 14:25 42 170 gettextize
01/12/2013 14:31 65 677 gio-querymodules.exe
01/12/2013 14:31 107 342 glib-compile-resources.exe
01/12/2013 14:31 118 257 glib-compile-schemas.exe
01/12/2013 14:31 90 048 glib-genmarshal.exe
01/12/2013 14:31 5 483 glib-gettextize
01/12/2013 14:31 17 968 glib-mkenums
01/12/2013 14:31 64 842 gobject-query.exe
01/12/2013 14:31 70 879 gresource.exe
01/12/2013 14:31 83 275 gsettings.exe
01/12/2013 14:31 66 125 gspawn-win64-helper-console.exe
01/12/2013 14:31 66 243 gspawn-win64-helper.exe
01/12/2013 15:05 68 226 gtk-query-immodules-3.0.exe
01/12/2013 15:05 99 034 gtk-update-icon-cache.exe
01/12/2013 15:05 585 gtk-update-icon-cache.exe.manifest
01/12/2013 15:05 192 548 gtk3-demo-application.exe
01/12/2013 15:05 516 715 gtk3-demo.exe
01/12/2013 15:05 145 457 gtk3-widget-factory.exe
01/12/2013 14:25 91 682 libasprintf-0.dll
01/12/2013 14:37 215 280 libatk-1.0-0.dll
01/12/2013 14:34 972 041 libcairo-2.dll
01/12/2013 14:34 73 310 libcairo-gobject-2.dll
01/12/2013 14:34 208 739 libcairo-script-interpreter-2.dll
01/12/2013 14:20 52 957 libcharset-1.dll
01/12/2013 14:38 338 000 libcroco-0.6-3.dll
01/12/2013 14:27 83 622 libffi-6.dll
01/12/2013 14:32 347 810 libfontconfig-1.dll
01/12/2013 14:32 752 539 libfreetype-6.dll
01/12/2013 15:05 93 389 libgailutil-3-0.dll
01/12/2013 15:05 870 852 libgdk-3-0.dll
01/12/2013 14:37 356 005 libgdk_pixbuf-2.0-0.dll
01/12/2013 14:25 1 401 627 libgettextlib-0-18-2.dll
01/12/2013 14:25 398 632 libgettextpo-0.dll
01/12/2013 14:25 320 913 libgettextsrc-0-18-2.dll
01/12/2013 14:31 1 789 609 libgio-2.0-0.dll
01/12/2013 14:31 1 513 572 libglib-2.0-0.dll
01/12/2013 14:31 64 399 libgmodule-2.0-0.dll
01/12/2013 14:31 403 969 libgobject-2.0-0.dll
01/12/2013 14:31 49 635 libgthread-2.0-0.dll
01/12/2013 15:05 6 317 774 libgtk-3-0.dll
01/12/2013 14:20 1 055 676 libiconv-2.dll
01/12/2013 14:25 154 337 libintl-8.dll
01/12/2013 14:35 449 890 libjasper-1.dll
01/12/2013 14:35 345 339 libjpeg-9.dll
01/12/2013 14:26 232 483 liblzma-5.dll
01/12/2013 14:35 439 347 libpango-1.0-0.dll
01/12/2013 14:35 142 951 libpangocairo-1.0-0.dll
01/12/2013 14:35 1 167 075 libpangoft2-1.0-0.dll
01/12/2013 14:35 147 550 libpangowin32-1.0-0.dll
01/12/2013 14:33 1 945 714 libpixman-1-0.dll
01/12/2013 14:32 2 348 libpng-config
01/12/2013 14:32 265 538 libpng15-15.dll
01/12/2013 14:32 2 348 libpng15-config
01/12/2013 15:07 362 691 librsvg-2-2.dll
01/12/2013 14:37 606 630 libtiff-5.dll
01/12/2013 14:27 1 740 678 libxml2-2.dll
01/12/2013 14:25 142 908 ngettext.exe
01/12/2013 14:35 72 342 pango-querymodules.exe
01/12/2013 14:35 121 526 pango-view.exe
01/12/2013 14:31 117 703 pkg-config.exe
01/12/2013 15:16 55 246 pthreadGC2.dll
01/12/2013 14:27 1 681 xml2-config
01/12/2013 14:27 145 311 xmllint.exe
01/12/2013 14:25 91 136 zlib1.dll
82 fichier(s) 29 471 245 octets
2 Rép(s) 101 430 677 504 octets libres
--8<----8<----8<----8<----8<-- end -->8---->8---->8---->8---->8----
I can't remember when and why I installed this, but this is what causes
the conflict, and placing c:\msys64\mingw64\bin just before it solves
it, and apparently did not change anything for the application which I
use on a regular basis.
I have not investigated further which DLL in this directory is the
conflict cause. What happens when PATH is incorrecly configured is that
at Emacs start-up the Emacs windows appears, it remains black and
everying is frozen (no keyboard events, no mouse event, to kill Emacs I
need to go to the MSWindows Task manager).
>
>>> Is there some reason you changed to a for loop?
>>>
>>
>> Yes, I had some packages already installed, and if I just type
>>
>> pacman -S msys/msys2-launcher-git \
>> msys/m4 \
>> msys/autoconf \
> [...]
>>
>> and I type ENTER for defaulting to « all » then it seems that pacman
>> does not really re-install anything. With a look thing are handled one
>> by one more cleanly, and it is easier for the user to discriminate.
>
> Yes, it seems that it hits an error trying to install
> mingw64/mingw-w64-x86_64-liblcms2, and then just quits. The error is
> somewhat lost in the noise:
>
> error: target not found: mingw-w64-x86_64-liblcms2
>
> It seems the name must be updated to mingw-w64-x86_64-lcms2.
I did that, and now it is fine w/o the loop.
>
> A drawback of the for loop method is that it is difficult to abort,
> even hitting Ctrl+C doesn't stop the loop, you have to hit it again
> for each package.
OK.
I attached a revised patch. I did not yet changed the section « **
Configure your MSYS2 PATH variable for application running from an
mingw64 console ». I will do a further edit about that. This section
will be renamed to « ** Check your MSYS2 PATH variable » and describe
just the checking, and the bulk of the section about editing ~/.bashrc
will be pushed to some « Trouble shooting » section, because, as I had
written, the real problem was my improrer hacking of /msys2_sell.cmd &
~/.bashrc scripts.
BTW, I have made one more comment to MSYS2 issue tracker with a revised
MSYS2 launcher MSDos script fixing this PATH initialization issue caused
by my previous hack:
https://github.com/msys2/msys2/issues/71#issuecomment-337727083
I don't know whether MSYS2 people will buy that, now there is the
launcher module. Yes, I still find that the MSDos script is useful for
getting finer control/understanding about the launch.
VBR,
Vincent.
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: INSTALL.W64.diff --]
[-- Type: text/x-patch, Size: 7275 bytes --]
diff --git a/nt/INSTALL.W64 b/nt/INSTALL.W64
index 4a93dc0..070ad34 100644
--- a/nt/INSTALL.W64
+++ b/nt/INSTALL.W64
@@ -29,24 +29,32 @@ build tools for MinGW-w64 -- see http://msys2.github.io/.
You can download the x86_64 version of MSYS2 (i.e. msys2-x86_64-<date>.exe)
from
- https://sourceforge.net/projects/msys2/files/Base/x86_64
+ https://sourceforge.net/projects/msys2/files/Base/x86_64
Run this file to install MSYS2 in your preferred directory, e.g. the default
C:\msys64 -- this will install MinGW-w64 also. Note that directory names
containing spaces may cause problems.
+* Configure your MSWindows PATH variable
+
Then you'll need to add the following directories to your Windows PATH
environment variable:
c:\msys64\usr\bin;c:\msys64\mingw64\bin
-you can do this through Control Panel / System and Security / System /
+where c:\msys64 depends on your MSYS2 installation, and is c:\msys64 by
+default.
+
+You can do this through Control Panel / System and Security / System /
Advanced system settings / Environment Variables / Edit path.
Adding these directories to your PATH tells Emacs where to find the DLLs it
needs to run, and some optional commands like grep and find. These commands
will also be available at the Windows console.
+Concerning the find command see also the last step about configuring
+your init file to get an MSWindows find port.
+
** Download and install the necessary packages
Run msys2_shell.bat in your MSYS2 directory and you will see a BASH window
@@ -55,25 +63,85 @@ opened.
In the BASH prompt, use the following command to install the necessary
packages (you can copy and paste it into the shell with Shift + Insert):
- pacman -S base-devel \
- mingw-w64-x86_64-toolchain \
- mingw-w64-x86_64-xpm-nox \
- mingw-w64-x86_64-libtiff \
- mingw-w64-x86_64-giflib \
- mingw-w64-x86_64-libpng \
- mingw-w64-x86_64-libjpeg-turbo \
- mingw-w64-x86_64-librsvg \
- mingw-w64-x86_64-liblcms2 \
- mingw-w64-x86_64-libxml2 \
- mingw-w64-x86_64-gnutls \
- mingw-w64-x86_64-zlib
+ pacman -S msys/msys2-launcher-git \
+ msys/m4 \
+ msys/autoconf \
+ msys/grep \
+ msys/findutils \
+ mingw64/mingw-w64-x86_64-pkg-config \
+ mingw64/mingw-w64-x86_64-make \
+ mingw64/mingw-w64-x86_64-toolchain \
+ mingw64/mingw-w64-x86_64-xpm-nox \
+ mingw64/mingw-w64-x86_64-libtiff \
+ mingw64/mingw-w64-x86_64-giflib \
+ mingw64/mingw-w64-x86_64-libpng \
+ mingw64/mingw-w64-x86_64-libjpeg-turbo \
+ mingw64/mingw-w64-x86_64-librsvg \
+ mingw64/mingw-w64-x86_64-lcms2 \
+ mingw64/mingw-w64-x86_64-libxml2 \
+ mingw64/mingw-w64-x86_64-gnutls \
+ mingw64/mingw-w64-x86_64-zlib
+
+Answer Y (for yes) to all questions when the package is not up to date, and n
+(for no) otherwise.
The packages include the base developer tools (autoconf, grep, make, etc.),
the compiler toolchain (gcc, gdb, etc.), several image libraries, an XML
library, the GnuTLS (transport layer security) library, and zlib for
-decompressing text. Only the first three packages are required (base-devel,
-toolchain, xpm-nox); the rest are optional. You can select only part of the
-libraries if you don't need them all.
+decompressing text. Only the packages up to xpm-nox are required; the rest
+are optional. You can select only part of the libraries if you don't need
+them all.
+
+** Check your MSYS2 fstab file
+
+Assuming that MSYS2 is installed in c:\msys64, make sure that your fstab file
+(c:\msys64\etc\fstab) file contains the following lines (starting a column 0
+in the fstab file):
+
+ c:/msys64/mingw64/bin /mingw64/bin ntfs binary,noacl 0 0
+ c:/msys64/mingw32/bin /mingw32/bin ntfs binary,noacl 0 0
+
+Please note that only the first line is needed for 64bit compilation, the
+second one is for a complete fstab file w.r.t. 32bit compilation.
+
+If there is a space in the diectory where MSYS2 is installed, it shall be
+replaced by \040. For instance, if MSYS is installed under "C:\Program
+Files\msys64" there must be this line:
+
+
+ C:/Program\040Files/msys64/mingw64/bin /mingw64/bin ntfs binary,noacl 0 0
+
+Anyway, avoiding to have any space in the path is preferable.
+
+** Configure your MSYS2 PATH variable for application running from an mingw64 console
+
+When you launch the mingw64.exe console from the c:\msys64, and type
+
+ echo "$PATH"
+
+You must have /mingw64/bin and /usr/bin in the paths list in this order.
+
+Otherwise, it means that for some reason your ~/.bashrc file has been edited
+to set the PATH from scratch, which is not the standard MSYS configuration.
+You will need to exit the MINGW64 console and edit your ~/.bashrc file, where
+~ denote c:\msys64\home\%USERNAME%, to have the correct PATH variable from
+any of MSYS/MINGW32/MINGW64 consoles, for instance, please make sure that
+~/.bashrc contains some statement like this:
+
+ case x$MSYSTEM in
+ xMINGW64)
+ PATH="/mingw64/bin:/usr/bin:$PATH"
+ ;;
+ xMINGW32)
+ PATH="/mingw32/bin:/usr/bin:$PATH"
+ ;;
+ xMSYS)
+ PATH="/usr/bin:$PATH"
+ ;;
+ esac
+
+Actually, for the Emacs build only the MINGW64 is useful. There could other
+cases for MSYSTEM envvar equal to MSYS or to MINGW32.
You now have a complete build environment for Emacs.
@@ -126,8 +194,8 @@ Now you're ready to build and install Emacs with autogen, configure, make,
and make install.
First we need to switch to the MinGW-w64 environment. Exit the MSYS2 BASH
-console and run mingw64_shell.bat in the C:\msys64 folder, then cd back to
-your Emacs source directory, e.g.:
+console and run mingw64.exe in the C:\msys64 folder, then cd back to your
+Emacs source directory, e.g.:
cd /c/emacs/emacs-26
@@ -202,6 +270,39 @@ You can set any command line options by right clicking on the resulting
shortcut, select Properties, then add any options to the Target command,
e.g. --debug-init.
+* Configure your init file for Emacs to get a findutils windows port
+
+As far as find is concerned, at this stage you have configured the
+MSWindows PATH envvar to have c:\msys64\usr\bin in
+it.
+
+You should have done that in a way that c:\msys64\usr\bin is after
+C:\Windows\System32 in the PATH, otherwise the MSYS2 find.exe will be used
+instead of the MSWindows find.exe by other MSWindows application and this may
+cause some problem in your MSWindows environment --- although nobody has ever
+reported such a trouble.
+
+As far as Emacs is concerned, the lasy way is to use the MSYS2 find utility
+despit the PATH envvar by setting in your init file the following (where
+c:/msys64 has to be replaced with the directory where MSYS2 is installed):
+
+ (setq find-program "c:/msys64/usr/bin/find.exe")
+
+Actually, it is better to work a little bit more and use a MSWindows port
+rather than the MSYS find. See why here
+https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27393
+
+For instance this port can be used.
+
+https://sourceforge.net/projects/ezwinports/files/findutils-4.2.30-5-w64-bin.zip/download
+
+Then add to your init file lines like these :
+
+ (setq find-program "c:/PATH/TO/FIND/PORT/find.exe")
+
+where "c:/PATH/TO/FIND/PORT/" is the place where you have installed this find
+MSWindows port.
+
* Credits
Thanks to Chris Zheng for the original build outline as used by the
^ permalink raw reply related [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-10-19 8:25 ` Vincent Belaïche
@ 2017-11-08 2:37 ` Noam Postavsky
2017-11-08 16:05 ` Eli Zaretskii
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-11-08 2:37 UTC (permalink / raw)
To: Vincent Belaïche
Cc: Fabrice Popineau, Francis Wright, Stephen Leake, 28601,
Phillip Lord
[-- Attachment #1: Type: text/plain, Size: 129 bytes --]
severity 28601 minor
merge 28601 28888
quit
Trying to consolidate recent bug-gnus-emacs and emacs-devel discussion
about this.
[-- Attachment #2: patch --]
[-- Type: text/x-diff, Size: 4973 bytes --]
From f7aa938dbba2514aab73691eb6beea26dfa41d70 Mon Sep 17 00:00:00 2001
From: Noam Postavsky <npostavs@gmail.com>
Date: Tue, 7 Nov 2017 18:01:01 -0500
Subject: [PATCH v3] * nt/INSTALL.W64: Add "Troubleshooting" section
(Bug#28601).
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-authored-by: Vincent Belaiche <vincent.belaïche@gmail.com>
---
nt/INSTALL.W64 | 75 ++++++++++++++++++++++++++++++++++++++++++++--------------
1 file changed, 57 insertions(+), 18 deletions(-)
diff --git a/nt/INSTALL.W64 b/nt/INSTALL.W64
index 71864ce..c612b13 100644
--- a/nt/INSTALL.W64
+++ b/nt/INSTALL.W64
@@ -35,18 +35,6 @@ Run this file to install MSYS2 in your preferred directory, e.g. the default
C:\msys64 -- this will install MinGW-w64 also. Note that directory names
containing spaces may cause problems.
-Then you'll need to add the following directories to your Windows PATH
-environment variable:
-
- c:\msys64\usr\bin;c:\msys64\mingw64\bin
-
-you can do this through Control Panel / System and Security / System /
-Advanced system settings / Environment Variables / Edit path.
-
-Adding these directories to your PATH tells Emacs where to find the DLLs it
-needs to run, and some optional commands like grep and find. These commands
-will also be available at the Windows console.
-
** Download and install the necessary packages
Run c:/msys64/msys2.exe in your MSYS2 directory and you will see a BASH window
@@ -112,11 +100,11 @@ C:\emacs\emacs-24.5:
** From the Git repository
To download the Git repository, do something like the following -- this will
-put the Emacs source into C:\emacs\emacs-25:
+put the Emacs source into C:\emacs\emacs-26:
mkdir /c/emacs
cd /c/emacs
- git clone git://git.sv.gnu.org/emacs.git emacs-25
+ git clone git://git.sv.gnu.org/emacs.git emacs-26
(We recommend using the command shown on Savannah Emacs project page.)
@@ -150,11 +138,10 @@ which 'make install' will use - in this example we set it to C:\emacs\emacs-26.
If a prefix is not specified the files will be put in the standard Unix
directories located in your C:\msys64 directory, but this is not recommended.
-Note also that we need to disable Imagemagick because Emacs does not yet
-support it on Windows.
+Note also that we need to disable Imagemagick and DBUS because Emacs
+does not yet support them on Windows.
- PKG_CONFIG_PATH=/mingw64/lib/pkgconfig \
- ./configure --prefix=/c/emacs/emacs-26 --without-imagemagick
+ ./configure --prefix=/c/emacs/emacs-26 --without-imagemagick --without-dbus
** Run make
@@ -192,6 +179,14 @@ To test it out, run
and if all went well, you will have a new 64-bit version of Emacs.
+When running Emacs from outside the mingw64 shell, you will need to
+add c:\msys64\mingw64\bin to your Windows PATH, or copy the needed
+DLLs into Emacs' bin/ directory. Otherwise features such as TLS which
+depend on those DLLs will be missing.
+
+You can do this through Control Panel / System and Security / System /
+Advanced system settings / Environment Variables / Edit path.
+
* Make a shortcut
To make a shortcut to run the new Emacs, right click on the location where you
@@ -202,6 +197,50 @@ You can set any command line options by right clicking on the resulting
shortcut, select Properties, then add any options to the Target command,
e.g. --debug-init.
+* Troubleshooting
+
+** Missing mingw64.exe launcher
+
+Older versions of Msys2 may lack the mingw64.exe launcher program. If
+you have them, running mingw64_shell.bat or "msys2_shell.cmd -mingw64"
+should work instead.
+
+Alternatively, install mingw64.exe with
+
+ pacman -S msys/msys2-launcher-git
+
+** Check your $PATH
+
+When building Emacs, you should have /mingw64/bin in $PATH, such that running
+
+ which gcc
+
+gives '/mingw64/bin/gcc'.
+
+** Check your $PKG_CONFIG_PATH
+
+It should start with '/mingw64/lib/pkgconfig'.
+
+** Check your MSYS2 fstab file
+
+Assuming that MSYS2 is installed in c:\msys64, make sure that your fstab file
+(c:\msys64\etc\fstab) file contains the following lines (starting a column 0
+in the fstab file):
+
+ c:/msys64/mingw64/bin /mingw64/bin ntfs binary,noacl 0 0
+ c:/msys64/mingw32/bin /mingw32/bin ntfs binary,noacl 0 0
+
+Please note that only the first line is needed for 64bit compilation, the
+second one is for a complete fstab file w.r.t. 32bit compilation.
+
+If there is a space in the diectory where MSYS2 is installed, it shall be
+replaced by \040. For instance, if MSYS is installed under "C:\Program
+Files\msys64" there must be this line:
+
+ C:/Program\040Files/msys64/mingw64/bin /mingw64/bin ntfs binary,noacl 0 0
+
+As mentioned above, avoiding spaces is preferable.
+
* Credits
Thanks to Chris Zheng for the original build outline as used by the
--
2.6.2.windows.1
^ permalink raw reply related [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-11-08 2:37 ` Noam Postavsky
@ 2017-11-08 16:05 ` Eli Zaretskii
2017-11-08 17:42 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-11-08 16:05 UTC (permalink / raw)
To: Noam Postavsky
Cc: fabrice.popineau, f.j.wright, vincent.belaiche, 28601,
stephen_leake, phillip.lord
> From: Noam Postavsky <npostavs@users.sourceforge.net>
> Cc: Glenn Morris <rgm@gnu.org>, Eli Zaretskii <eliz@gnu.org>, 28601@debbugs.gnu.org, Francis Wright <f.j.wright@live.co.uk>, Stephen Leake <stephen_leake@stephe-leake.org>, Phillip Lord <phillip.lord@russet.org.uk>, Fabrice Popineau <fabrice.popineau@gmail.com>
> Date: Tue, 07 Nov 2017 21:37:41 -0500
>
> Trying to consolidate recent bug-gnus-emacs and emacs-devel discussion
> about this.
Thanks.
> -Note also that we need to disable Imagemagick because Emacs does not yet
> -support it on Windows.
> +Note also that we need to disable Imagemagick and DBUS because Emacs
> +does not yet support them on Windows.
I think the correct spelling is D-Bus, no?
> +** Check your $PATH
> +
> +When building Emacs, you should have /mingw64/bin in $PATH, such that running
> +
> + which gcc
> +
> +gives '/mingw64/bin/gcc'.
> +
> +** Check your $PKG_CONFIG_PATH
> +
> +It should start with '/mingw64/lib/pkgconfig'.
You are talking to Windows users here, they might not be familiar with
the Unix shell's $FOO syntax. So I suggest to be more explicit here,
something like
** Check your PATH environment variable
Also, there are native Windows ports of 'which', so I suggest to say
explicitly that "which gcc" should be invoked from the MSYS Bash
command line (and if so, why not use "type gcc" instead?). Otherwise,
the report by 'which' might be in a very different form, because
/mingw64 is not a real Windows file name.
(Btw, on my system, "type gcc" from Bash says "/d/usr/bin/gcc", and
there's nothing wrong with my installation. So this advice could be
okay for the newbies, but if the value is different, it doesn't yet
mean the installation is wrong. I'm just saying.)
> +** Check your MSYS2 fstab file
I don't understand why this part is necessary. AFAIR, fstab is set up
by the MSYS installer, and if it doesn't have the correct entries,
nothing will really work. So I think this problem can only happen if
someone manually tinkers with their fstab, and if so, they should know
what they are doing. Asking people to look there runs the risk of
them deciding that the value is somehow incorrect, and editing it to
completely ruin their MSYS installation. FWIW, I have _never_ needed
to look at that file, in all the years I have an actively maintained
and used MSYS installation.
So I think this is best skipped.
Thanks again for working on this, and thanks to everyone else who
contributed to this discussion.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-11-08 16:05 ` Eli Zaretskii
@ 2017-11-08 17:42 ` Noam Postavsky
2017-11-08 18:13 ` Eli Zaretskii
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-11-08 17:42 UTC (permalink / raw)
To: Eli Zaretskii
Cc: Fabrice Popineau, Francis Wright, Vincent Belaïche, 28601,
Stephen Leake, Phillip Lord
On Wed, Nov 8, 2017 at 11:05 AM, Eli Zaretskii <eliz@gnu.org> wrote:
>> +Note also that we need to disable Imagemagick and DBUS because Emacs
>> +does not yet support them on Windows.
>
> I think the correct spelling is D-Bus, no?
Yes, you're right (ref https://www.freedesktop.org/wiki/Software/dbus/).
>> +** Check your $PATH
>> +
>> +When building Emacs, you should have /mingw64/bin in $PATH, such that running
>> +
>> + which gcc
>> +
>> +gives '/mingw64/bin/gcc'.
>> +
>> +** Check your $PKG_CONFIG_PATH
>> +
>> +It should start with '/mingw64/lib/pkgconfig'.
>
> You are talking to Windows users here, they might not be familiar with
> the Unix shell's $FOO syntax. So I suggest to be more explicit here,
> something like
>
> ** Check your PATH environment variable
>
> Also, there are native Windows ports of 'which', so I suggest to say
> explicitly that "which gcc" should be invoked from the MSYS Bash
> command line (and if so, why not use "type gcc" instead?). Otherwise,
> the report by 'which' might be in a very different form, because
> /mingw64 is not a real Windows file name.
>
> (Btw, on my system, "type gcc" from Bash says "/d/usr/bin/gcc", and
> there's nothing wrong with my installation. So this advice could be
> okay for the newbies, but if the value is different, it doesn't yet
> mean the installation is wrong. I'm just saying.)
But you have MSYS (1), right? The issue here, is that with MSYS2 there
are 3 possible gcc's that can be installed. The mingw64 one should be
active. If the user launched C:\msys64\msys2.exe instead of
C:\msys64\mingw64.exe, they would get "/usr/bin/gcc", which is not the
right gcc (it would result in the "Emacs does not support
'x86_64-pc-msys' systems" error mentioned in the bug title).
Obviously, the text in my patch didn't explain this clearly enough.
>> +** Check your MSYS2 fstab file
>
> I don't understand why this part is necessary. AFAIR, fstab is set up
> by the MSYS installer, and if it doesn't have the correct entries,
> nothing will really work. So I think this problem can only happen if
> someone manually tinkers with their fstab, and if so, they should know
> what they are doing. Asking people to look there runs the risk of
> them deciding that the value is somehow incorrect, and editing it to
> completely ruin their MSYS installation. FWIW, I have _never_ needed
> to look at that file, in all the years I have an actively maintained
> and used MSYS installation.
>
> So I think this is best skipped.
Maybe we should title the section "If your name is Vincent, Check your
MSYS2 fstab file" ;)
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-11-08 17:42 ` Noam Postavsky
@ 2017-11-08 18:13 ` Eli Zaretskii
2017-11-08 19:23 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-11-08 18:13 UTC (permalink / raw)
To: Noam Postavsky
Cc: fabrice.popineau, f.j.wright, vincent.belaiche, 28601,
stephen_leake, phillip.lord
> From: Noam Postavsky <npostavs@users.sourceforge.net>
> Date: Wed, 8 Nov 2017 12:42:29 -0500
> Cc: Vincent Belaïche <vincent.belaiche@gmail.com>,
> Glenn Morris <rgm@gnu.org>, 28601@debbugs.gnu.org, Francis Wright <f.j.wright@live.co.uk>,
> Stephen Leake <stephen_leake@stephe-leake.org>, Phillip Lord <phillip.lord@russet.org.uk>,
> Fabrice Popineau <fabrice.popineau@gmail.com>
>
> > (Btw, on my system, "type gcc" from Bash says "/d/usr/bin/gcc", and
> > there's nothing wrong with my installation. So this advice could be
> > okay for the newbies, but if the value is different, it doesn't yet
> > mean the installation is wrong. I'm just saying.)
>
> But you have MSYS (1), right?
Yes, but it doesn't matter. MSYS2 didn't (and couldn't) change the
basic facts that I'll try explaining below.
> The issue here, is that with MSYS2 there are 3 possible gcc's that
> can be installed. The mingw64 one should be active. If the user
> launched C:\msys64\msys2.exe instead of C:\msys64\mingw64.exe, they
> would get "/usr/bin/gcc", which is not the right gcc (it would
> result in the "Emacs does not support 'x86_64-pc-msys' systems"
> error mentioned in the bug title).
All of this is only true if your installation is the "canonical" one,
in which case MinGW and MSYS are installed under the same common
parent, but in sibling subdirectories. But that's not the only valid
installation. The only important thing is that the MinGW programs,
including GCC, are on the Windows PATH, because then they can be
invoked both from MSYS Bash and from anywhere else on the system
(including from Emacs which was run via anything except Bash). There
are no other requirements for a healthy MinGW installation. If
someone installed MSYS gcc (why did they? it's not needed, and they
are shooting themselves in the foot), they just need to make sure it's
mentioned on PATH after the MinGW one, or even doesn't appear at all
on the Windows PATH, only on the MSYS PATH set by .bashrc and friends.
IOW, what we are advertising here is only one particular setup, which
just happens to be what the MSYS2 crowd decided for you. It is
incorrect to say that any other setup is wrong.
> >> +** Check your MSYS2 fstab file
> >
> > I don't understand why this part is necessary. AFAIR, fstab is set up
> > by the MSYS installer, and if it doesn't have the correct entries,
> > nothing will really work. So I think this problem can only happen if
> > someone manually tinkers with their fstab, and if so, they should know
> > what they are doing. Asking people to look there runs the risk of
> > them deciding that the value is somehow incorrect, and editing it to
> > completely ruin their MSYS installation. FWIW, I have _never_ needed
> > to look at that file, in all the years I have an actively maintained
> > and used MSYS installation.
> >
> > So I think this is best skipped.
>
> Maybe we should title the section "If your name is Vincent, Check your
> MSYS2 fstab file" ;)
Fine with me.
Thanks.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-11-08 18:13 ` Eli Zaretskii
@ 2017-11-08 19:23 ` Noam Postavsky
2017-11-08 19:38 ` Eli Zaretskii
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-11-08 19:23 UTC (permalink / raw)
To: Eli Zaretskii
Cc: Fabrice Popineau, Francis Wright, Vincent Belaïche, 28601,
Stephen Leake, Phillip Lord
On Wed, Nov 8, 2017 at 1:13 PM, Eli Zaretskii <eliz@gnu.org> wrote:
> IOW, what we are advertising here is only one particular setup, which
> just happens to be what the MSYS2 crowd decided for you. It is
> incorrect to say that any other setup is wrong.
Okay, it occurs to me that checking the output of 'gcc -v 2>&1 | grep
Target' would be a more robust way of checking this anyway.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-11-08 19:23 ` Noam Postavsky
@ 2017-11-08 19:38 ` Eli Zaretskii
2017-11-16 14:40 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-11-08 19:38 UTC (permalink / raw)
To: Noam Postavsky
Cc: fabrice.popineau, f.j.wright, vincent.belaiche, 28601,
stephen_leake, phillip.lord
> From: Noam Postavsky <npostavs@users.sourceforge.net>
> Date: Wed, 8 Nov 2017 14:23:55 -0500
> Cc: Vincent Belaïche <vincent.belaiche@gmail.com>,
> Glenn Morris <rgm@gnu.org>, 28601@debbugs.gnu.org, Francis Wright <f.j.wright@live.co.uk>,
> Stephen Leake <stephen_leake@stephe-leake.org>, Phillip Lord <phillip.lord@russet.org.uk>,
> Fabrice Popineau <fabrice.popineau@gmail.com>
>
> Okay, it occurs to me that checking the output of 'gcc -v 2>&1 | grep
> Target' would be a more robust way of checking this anyway.
Yes.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-11-08 19:38 ` Eli Zaretskii
@ 2017-11-16 14:40 ` Noam Postavsky
2017-11-16 16:11 ` Eli Zaretskii
0 siblings, 1 reply; 48+ messages in thread
From: Noam Postavsky @ 2017-11-16 14:40 UTC (permalink / raw)
To: Eli Zaretskii
Cc: Fabrice Popineau, Francis Wright, Vincent Belaïche, 28601,
Stephen Leake, Phillip Lord
[-- Attachment #1: Type: text/plain, Size: 25 bytes --]
Here's an updated patch.
[-- Attachment #2: v4-0001-Update-nt-INSTALL.W64-Bug-28601.patch --]
[-- Type: application/octet-stream, Size: 4790 bytes --]
From a4509709fb913999fd469857397c872e45d90751 Mon Sep 17 00:00:00 2001
From: Noam Postavsky <npostavs@gmail.com>
Date: Tue, 7 Nov 2017 18:01:01 -0500
Subject: [PATCH v4] Update nt/INSTALL.W64 (Bug#28601)
* nt/INSTALL.W64 (Download and install MinGW-w64 and MSYS2): Move
suggestion about modifying PATH to...
(Test Emacs): ... here.
(Run configure): Remove the unnecessary setting of PKG_CONFIG_PATH.
(Troubleshooting): New section, includes suggestion to check
PKG_CONFIG_PATH.
---
nt/INSTALL.W64 | 76 ++++++++++++++++++++++++++++++++++++++++++++--------------
1 file changed, 58 insertions(+), 18 deletions(-)
diff --git a/nt/INSTALL.W64 b/nt/INSTALL.W64
index 71864ce..e08b72f 100644
--- a/nt/INSTALL.W64
+++ b/nt/INSTALL.W64
@@ -35,18 +35,6 @@ Run this file to install MSYS2 in your preferred directory, e.g. the default
C:\msys64 -- this will install MinGW-w64 also. Note that directory names
containing spaces may cause problems.
-Then you'll need to add the following directories to your Windows PATH
-environment variable:
-
- c:\msys64\usr\bin;c:\msys64\mingw64\bin
-
-you can do this through Control Panel / System and Security / System /
-Advanced system settings / Environment Variables / Edit path.
-
-Adding these directories to your PATH tells Emacs where to find the DLLs it
-needs to run, and some optional commands like grep and find. These commands
-will also be available at the Windows console.
-
** Download and install the necessary packages
Run c:/msys64/msys2.exe in your MSYS2 directory and you will see a BASH window
@@ -112,11 +100,11 @@ C:\emacs\emacs-24.5:
** From the Git repository
To download the Git repository, do something like the following -- this will
-put the Emacs source into C:\emacs\emacs-25:
+put the Emacs source into C:\emacs\emacs-26:
mkdir /c/emacs
cd /c/emacs
- git clone git://git.sv.gnu.org/emacs.git emacs-25
+ git clone git://git.sv.gnu.org/emacs.git emacs-26
(We recommend using the command shown on Savannah Emacs project page.)
@@ -150,11 +138,10 @@ which 'make install' will use - in this example we set it to C:\emacs\emacs-26.
If a prefix is not specified the files will be put in the standard Unix
directories located in your C:\msys64 directory, but this is not recommended.
-Note also that we need to disable Imagemagick because Emacs does not yet
-support it on Windows.
+Note also that we need to disable Imagemagick and D-Bus because Emacs
+does not yet support them on Windows.
- PKG_CONFIG_PATH=/mingw64/lib/pkgconfig \
- ./configure --prefix=/c/emacs/emacs-26 --without-imagemagick
+ ./configure --prefix=/c/emacs/emacs-26 --without-imagemagick --without-dbus
** Run make
@@ -192,6 +179,14 @@ To test it out, run
and if all went well, you will have a new 64-bit version of Emacs.
+When running Emacs from outside the mingw64 shell, you will need to
+add c:\msys64\mingw64\bin to your Windows PATH, or copy the needed
+DLLs into Emacs' bin/ directory. Otherwise features such as TLS which
+depend on those DLLs will be missing.
+
+You can do this through Control Panel / System and Security / System /
+Advanced system settings / Environment Variables / Edit path.
+
* Make a shortcut
To make a shortcut to run the new Emacs, right click on the location where you
@@ -202,6 +197,51 @@ You can set any command line options by right clicking on the resulting
shortcut, select Properties, then add any options to the Target command,
e.g. --debug-init.
+* Troubleshooting
+
+** Missing mingw64.exe launcher
+
+Older versions of Msys2 may lack the mingw64.exe launcher program. If
+you have them, running mingw64_shell.bat or "msys2_shell.cmd -mingw64"
+should work instead.
+
+Alternatively, install mingw64.exe with
+
+ pacman -S msys/msys2-launcher-git
+
+** Configure errors
+
+*** Check that mingw64 gcc is accessible
+
+Errors like
+
+ configure: error: Emacs does not support 'x86_64-pc-msys' systems.
+
+or
+
+ checking the compiler's target... configure: error: Impossible to obtain gcc compiler target.
+
+indicate you didn't use the mingw64 launcher, or you didn't install
+gcc. It's also possible you have something in ~/.bashrc or ~/.profile
+which modifies PATH or MSYSTEM to an unexpected value, preventing gcc
+from being found. At the mingw64 bash shell, running
+
+ gcc -v
+
+should give output which includes the text
+
+ Target: x86_64-w64-mingw32
+
+*** Check your $PKG_CONFIG_PATH
+
+For a typical MSYS2 install, running
+
+ echo $PKG_CONFIG_PATH
+
+at the mingw64 bash shell should give print a value starting with
+'/mingw64/lib/pkgconfig'. Incorrect values may prevent configure from
+finding installed libraries.
+
* Credits
Thanks to Chris Zheng for the original build outline as used by the
--
2.6.2.windows.1
^ permalink raw reply related [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-11-16 14:40 ` Noam Postavsky
@ 2017-11-16 16:11 ` Eli Zaretskii
2017-11-21 19:44 ` Noam Postavsky
0 siblings, 1 reply; 48+ messages in thread
From: Eli Zaretskii @ 2017-11-16 16:11 UTC (permalink / raw)
To: Noam Postavsky
Cc: fabrice.popineau, f.j.wright, vincent.belaiche, 28601,
stephen_leake, phillip.lord
> From: Noam Postavsky <npostavs@users.sourceforge.net>
> Date: Thu, 16 Nov 2017 09:40:56 -0500
> Cc: Vincent Belaïche <vincent.belaiche@gmail.com>,
> Glenn Morris <rgm@gnu.org>, 28601@debbugs.gnu.org, Francis Wright <f.j.wright@live.co.uk>,
> Stephen Leake <stephen_leake@stephe-leake.org>, Phillip Lord <phillip.lord@russet.org.uk>,
> Fabrice Popineau <fabrice.popineau@gmail.com>
>
> Here's an updated patch.
LGTM, thanks.
^ permalink raw reply [flat|nested] 48+ messages in thread
* bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems.
2017-11-16 16:11 ` Eli Zaretskii
@ 2017-11-21 19:44 ` Noam Postavsky
0 siblings, 0 replies; 48+ messages in thread
From: Noam Postavsky @ 2017-11-21 19:44 UTC (permalink / raw)
To: Eli Zaretskii
Cc: 28601-done, Fabrice Popineau, Francis Wright,
Vincent Belaïche, Stephen Leake, Phillip Lord
On Thu, Nov 16, 2017 at 11:11 AM, Eli Zaretskii <eliz@gnu.org> wrote:
>> Here's an updated patch.
>
> LGTM, thanks.
Pushed to emacs-26.
[1: 7ab7603]: 2017-11-21 14:43:04 -0500
Update nt/INSTALL.W64 (Bug#28601)
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=7ab7603125d7361cb13f5accbeb1c3e02a21b693
^ permalink raw reply [flat|nested] 48+ messages in thread
end of thread, other threads:[~2017-11-21 19:44 UTC | newest]
Thread overview: 48+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-09-25 20:02 bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems Vincent Belaïche
2017-09-27 18:36 ` Glenn Morris
2017-09-27 19:07 ` Vincent Belaïche
2017-09-27 19:10 ` Vincent Belaïche
2017-09-27 21:37 ` Glenn Morris
2017-09-28 13:10 ` Andy Moreton
2017-09-29 9:37 ` Eli Zaretskii
2017-10-12 23:06 ` Noam Postavsky
2017-10-13 6:41 ` Eli Zaretskii
2017-10-13 10:14 ` Andy Moreton
2017-10-13 12:22 ` Eli Zaretskii
2017-10-13 13:52 ` Andy Moreton
2017-10-13 14:38 ` Eli Zaretskii
2017-10-13 16:33 ` Noam Postavsky
2017-10-13 17:24 ` Eli Zaretskii
2017-10-13 17:51 ` Noam Postavsky
2017-10-13 18:35 ` Eli Zaretskii
2017-10-13 18:52 ` windows build help Phillip Lord
2017-10-13 19:36 ` Óscar Fuentes
2017-10-13 19:38 ` Stephen Leake
2017-10-14 11:07 ` Phillip Lord
2017-10-14 15:15 ` Stephen Leake
2017-10-14 15:26 ` Phillip Lord
2017-10-14 15:31 ` Eli Zaretskii
2017-10-14 23:04 ` Paul Eggert
2017-10-16 1:53 ` Richard Stallman
2017-10-16 6:49 ` Paul Eggert
2017-10-16 13:54 ` Stefan Monnier
2017-10-13 19:47 ` Noam Postavsky
2017-10-14 11:09 ` Phillip Lord
2017-10-13 14:09 ` bug#28601: 26.0.50; configure: error: Emacs does not support 'x86_64-pc-msys' systems Vincent Belaïche
2017-10-13 14:16 ` Noam Postavsky
2017-10-14 1:40 ` Noam Postavsky
2017-10-16 8:59 ` Vincent Belaïche
2017-10-16 14:23 ` Noam Postavsky
2017-10-16 17:11 ` Vincent Belaïche
2017-10-16 21:42 ` Noam Postavsky
2017-10-19 8:25 ` Vincent Belaïche
2017-11-08 2:37 ` Noam Postavsky
2017-11-08 16:05 ` Eli Zaretskii
2017-11-08 17:42 ` Noam Postavsky
2017-11-08 18:13 ` Eli Zaretskii
2017-11-08 19:23 ` Noam Postavsky
2017-11-08 19:38 ` Eli Zaretskii
2017-11-16 14:40 ` Noam Postavsky
2017-11-16 16:11 ` Eli Zaretskii
2017-11-21 19:44 ` Noam Postavsky
2017-10-16 16:19 ` Eli Zaretskii
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.