all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Stephen Leake <stephen_leake@stephe-leake.org>
Cc: emacs-devel@gnu.org
Subject: Re: build failures in mingw64
Date: Sun, 09 Jul 2023 08:58:04 +0300	[thread overview]
Message-ID: <83lefpbp8z.fsf@gnu.org> (raw)
In-Reply-To: <86fs5yt6mi.fsf@stephe-leake.org> (message from Stephen Leake on Sat, 08 Jul 2023 14:50:45 -0700)

> From: Stephen Leake <stephen_leake@stephe-leake.org>
> Date: Sat, 08 Jul 2023 14:50:45 -0700
> 
> I'm getting build failures on master (pulled today).
> 
> First is:
> 
> In file included from C:/Projects/emacs/master/nt/inc/sys/socket.h:82,
>                  from thread.h:25,
>                  from lisp.h:2261,
>                  from dispnew.c:27:
> ./w32.h:253:10: fatal error: gnutls/gnutls.h: No such file or directory
>   253 | #include <gnutls/gnutls.h>
>       |          ^~~~~~~~~~~~~~~~~
> 
> The file is present in D:/msys64/mingw64/include/gnutls/gnutls.h, but
> D:/msys64/mingw64/include is not in the gcc include path. I can work
> around that with LIBGNUTLS_CFLAGS="-isystem D:/msys64/mingw64/include".
> 
> This appears to be due to a bug in mingw pkgconf; it says:
> 
> $ pkgconf --cflags gnutls
> -ID:/msys64/mingw64/include/p11-kit-1
> 
> but gnutls.h is not in p11-kit-1.

Please take this issue up with the MinGW64 folks who produce the
MinGW64 GnuTLS package.  You can meanwhile fix the gnutls.pc file
locally on your system, to specify the correct -I flag (which IMO
should be simply -I${includedir}).

> Continuing the make, I get another error:
> 
> d:/apps/gnat-gpl_2021/bin/../libexec/gcc/x86_64-w64-mingw32/10.3.1/ld.exe: gnutls.o: in function `gn
> utls_try_handshake':
> C:\Projects\emacs\master\src/gnutls.c:648: undefined reference to `nanosleep'
> C:\Projects\emacs\master\src/gnutls.c:648:(.text+0x49ce): relocation truncated to fit: R_X86_64_PC32
>  against undefined symbol `nanosleep'
> 
> This is from emacs/src/gnutls.c, which contains "GnuTLS glue for GNU
> Emacs". The reference to 'nanosleep' is on line 648; vc-annotate says:
> 
> cdbc2f9d274a (Lars Ingebrigtsen           2022-03-04  648)
> 
> so I don't see why this only started failing recently. I'll try
> bisecting.

Does this mean MinGW64 recently removed nanosleep from their runtime
library or something?  The MS-Windows build assumes MinGW does have
nanosleep, so it did exist at some point.



  reply	other threads:[~2023-07-09  5:58 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-08 21:50 build failures in mingw64 Stephen Leake
2023-07-09  5:58 ` Eli Zaretskii [this message]
  -- strict thread matches above, loose matches on Subject: below --
2023-07-09  8:05 Angelo Graziosi
2023-07-09  8:51 ` Eli Zaretskii
2023-07-09  9:33   ` Angelo Graziosi
2023-07-09 10:01     ` Angelo Graziosi
2023-07-09 11:22       ` Eli Zaretskii
2023-07-09 11:19     ` Eli Zaretskii
2023-07-09 20:57       ` Paul Eggert
2023-07-09 22:48         ` Angelo Graziosi
2023-07-10 12:28         ` Eli Zaretskii
2023-07-10 17:00           ` Paul Eggert
2023-07-10 23:40             ` Angelo Graziosi
2023-07-09 16:17 ` Stephen Leake

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83lefpbp8z.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=stephen_leake@stephe-leake.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.