[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#70889: 29.3; GCC14.1 MinGW compilation error
From: |
Cyril Arnould |
Subject: |
bug#70889: 29.3; GCC14.1 MinGW compilation error |
Date: |
Sun, 12 May 2024 09:29:02 +0200 |
User-agent: |
Mozilla Thunderbird |
I wanted to check how the MinGW related issues #63365 and #63752 behave
under GCC 14.1, however I did not get that far. Running the following:
git clone https://git.savannah.gnu.org/git/emacs.git
cd emacs
./autogen.sh
./configure
make
I get the error:
sysdep.c: In function 'get_child_status':
sysdep.c:479:13: error: implicit declaration of function 'waitpid'
[-Wimplicit-function-declaration]
479 | pid = waitpid (child, status, options);
| ^~~~~~~
sysdep.c:479:13: warning: nested extern declaration of 'waitpid'
[-Wnested-externs]
sysdep.c: In function 'child_status_changed':
sysdep.c:525:43: error: 'WNOHANG' undeclared (first use in this function)
525 | return get_child_status (child, status, WNOHANG | options, 0);
| ^~~~~~~
sysdep.c:525:43: note: each undeclared identifier is reported only once
for each function it appears in
sysdep.c:526:1: warning: control reaches end of non-void function
[-Wreturn-type]
526 | }
| ^
make[2]: *** [Makefile:452: sysdep.o] Error 1
make[2]: Leaving directory '/e/git/emacs-debug-gcc14/emacs/src'
make[1]: *** [Makefile:554: src] Error 2
make[1]: Leaving directory '/e/git/emacs-debug-gcc14/emacs'
make[1]: Entering directory '/e/git/emacs-debug-gcc14/emacs'
***
*** "make all" failed with exit status 2.
***
*** You could try to:
*** - run "make bootstrap", which might fix the problem
*** - run "make V=1", which displays the full commands invoked by make,
*** to further investigate the problem
***
make[1]: *** [Makefile:418: advice-on-failure] Error 2
make[1]: Leaving directory '/e/git/emacs-debug-gcc14/emacs'
make: *** [Makefile:374: all] Error 2
Currently I'm on commit 67b1da215c9. According to the GCC 14 porting
page "It is no longer possible to call a function that has not been
declared", so I guess that's the issue here. I've noticed that in
src/syswait.c, <sys/wait.h> is only included if HAVE_SYS_WAIT_H is
defined, which it isn't. If I do include <sys/wait.h> nonetheless in
this file, the compilation continues.
For the record, I run into an internal compiler issue in thread.c
after that, but that's not on emacs to solve I guess.
- bug#70889: 29.3; GCC14.1 MinGW compilation error,
Cyril Arnould <=
- bug#70890: 29.3; GCC14.1 MinGW compilation error, Cyril Arnould, 2024/05/12
- bug#70889: 29.3; GCC14.1 MinGW compilation error, Eli Zaretskii, 2024/05/12
- bug#70889: 29.3; GCC14.1 MinGW compilation error, Cyril Arnould, 2024/05/12
- bug#70889: 29.3; GCC14.1 MinGW compilation error, Eli Zaretskii, 2024/05/12
- bug#70889: 29.3; GCC14.1 MinGW compilation error, Cyril Arnould, 2024/05/12
- bug#70889: 29.3; GCC14.1 MinGW compilation error, Eli Zaretskii, 2024/05/12
- bug#70889: 29.3; GCC14.1 MinGW compilation error, Cyril Arnould, 2024/05/12
- bug#70889: 29.3; GCC14.1 MinGW compilation error, Eli Zaretskii, 2024/05/12
- bug#70889: 29.3; GCC14.1 MinGW compilation error, Paul Eggert, 2024/05/12