* 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ 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; 50+ 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] 50+ messages in thread
* Re: windows build help @ 2017-10-14 8:16 Angelo Graziosi 2017-10-14 11:16 ` Phillip Lord 0 siblings, 1 reply; 50+ messages in thread From: Angelo Graziosi @ 2017-10-14 8:16 UTC (permalink / raw) To: emacs-devel Phillip Lord wrote: > But I do the x86_64 building using the MINGW64 shell > (i.e. C:\msys64\mingw64.exe) and the i686 using MINGW32 in my script I added this: MSYSTEM="MINGW64" PATH="/mingw64/bin:$PATH" Also this should work: MSYSTEM=MINGW64 PATH="/mingw64/bin:$PATH" ~/emacs-w64-build.sh > the entire build takes about an hour or two On which machine? Here (an Athlon X2, 10 years old), with 'make -j3', the build [1] takes about 35-40 minutes [2]. Ciao, Angelo. ----- [1] From http://git.savannah.gnu.org/cgit/emacs.git/snapshot/emacs-master.tar.gz [2] Download of [1], unpacking, build, and tar.xz creation. ^ permalink raw reply [flat|nested] 50+ messages in thread
* Re: windows build help 2017-10-14 8:16 windows build help Angelo Graziosi @ 2017-10-14 11:16 ` Phillip Lord 0 siblings, 0 replies; 50+ messages in thread From: Phillip Lord @ 2017-10-14 11:16 UTC (permalink / raw) To: Angelo Graziosi; +Cc: emacs-devel Angelo Graziosi <angelo.g0@libero.it> writes: > Phillip Lord wrote: > >> But I do the x86_64 building using the MINGW64 shell >> (i.e. C:\msys64\mingw64.exe) and the i686 using MINGW32 > > in my script I added this: > > MSYSTEM="MINGW64" > PATH="/mingw64/bin:$PATH" > > Also this should work: > > MSYSTEM=MINGW64 PATH="/mingw64/bin:$PATH" ~/emacs-w64-build.sh > >> the entire build takes about an hour or two > > On which machine? Here (an Athlon X2, 10 years old), with 'make -j3', > the build [1] takes about 35-40 minutes [2]. The majority of the time is the elc compilation. So, the first build takes a long time, second much (much) less. There is also quite a lot of baggage on top of this. After the zip files have been build, I have to unzip them, so I check they run cleanly. This takes around 5 minutes per zip. For Emacs-26, I'm making four zips. Then the uploads. I normally do it over two days. Phil ^ permalink raw reply [flat|nested] 50+ messages in thread
end of thread, other threads:[~2017-11-21 19:44 UTC | newest] Thread overview: 50+ 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 -- strict thread matches above, loose matches on Subject: below -- 2017-10-14 8:16 windows build help Angelo Graziosi 2017-10-14 11:16 ` Phillip Lord
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.