GNU bug report logs -
#63365
30.0.50; GCC 13.1 breaks building Emacs with native-compilation
Previous Next
Reported by: Arash Esbati <arash <at> gnu.org>
Date: Mon, 8 May 2023 08:17:02 UTC
Severity: normal
Tags: moreinfo
Merged with 65727
Found in version 30.0.50
Done: Andrea Corallo <acorallo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Eli Zaretskii <eliz <at> gnu.org> writes:
> I'd like to see the backtrace from GDB and compare the addresses there
> with those in emacs_backtrace.txt.
I will try that later.
> Did you try to run the crashing command under GDB, as I described
> earlier?
Yes, I did that now, and the result is odd. I did in the shell (master
branch, 0e4cc6a8bf):
• git clean -fdx
• ./autogen.sh
• ./configure --with-native-compilation
• make V=1
which ends with:
*** "make all" failed with exit status 2.
***
*** You could try to:
*** - run "make bootstrap", which might fix the problem
*** - run "make V=1", which displays the full commands invoked by make,
*** to further investigate the problem
***
make[1]: *** [Makefile:414: advice-on-failure] Error 2
make[1]: Leaving directory '/z/path/to/emacs-build-test'
make: *** [Makefile:370: all] Error 2
Next, I inspected the build failures which look like this for example
(line breaks added manually)
'../src/emacs.exe' -batch --no-site-file --no-site-lisp \
--eval "(setq load-prefer-newer t byte-compile-warnings 'all)" \
--eval "(setq org--inhibit-version-check t)" \
-l comp -f batch-byte+native-compile obsolete/vip.el
Backtrace:
00007ff6ae7fa12e
00007ff6ae6c8be1
[...]
00007ff6ae75e9aa
...
make[3]: *** [Makefile:328: obsolete/vip.elc] Error 3
So I followed your advice and did:
• cd src/
• gdb ./emacs.exe
• (gdb) cd ../lisp
• (gdb) run -batch --no-site-file --no-site-lisp ... (as above)
which returns (line breaks added manually again):
Starting program: z:\path\to\emacs-build-test\src\emacs.exe \
-batch --no-site-file --no-site-lisp \
--eval "(setq load-prefer-newer t byte-compile-warnings 'all)" \
--eval "(setq org--inhibit-version-check t)" \
-l comp -f batch-byte+native-compile obsolete/vip.el
[New Thread 37728.0x6048]
[New Thread 37728.0x73cc]
[New Thread 37728.0x5e20]
[New Thread 37728.0x84c8]
[Thread 37728.0x84c8 exited with code 0]
[Thread 37728.0x6048 exited with code 0]
[Thread 37728.0x5e20 exited with code 0]
[Thread 37728.0x73cc exited with code 0]
[Inferior 1 (process 37728) exited normally]
Does this make sense? It seems that under GDB, it works fine and it
breaks during the normal compilation. I tried it for some other build
failures, they work under GDB.
Best, Arash
This bug report was last modified 1 year and 1 day ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.