Unable to build GDB on Windows

Eli Zaretskii eliz@gnu.org
Mon Sep 28 14:25:25 GMT 2020

> From: Simon Cook <simon.cook@embecosm.com>
> Date: Mon, 28 Sep 2020 14:47:25 +0100
> I've been trying to build top of tree GDB on Windows (natively under
> the MSYS2 environment), and haven't been able to link successfully due
> to undefined symbols after linking against gnulib:
>     CXXLD  gdb.exe
>   ../gnulib/import/libgnu.a(getrandom.o): In function `getrandom':
>   C:\msys64s\home\simon\work\b\gnulib\import/../../../binutils-gdb/gnulib/import/getrandom.c:129:
> undefined reference to `BCryptGenRandom'
>   collect2.exe: error: ld returned 1 exit status
> Reading through the source file and gnulib/import/m4/getrandom.m4, it
> suggests that in my case if bcrypt can be guaranteed to be present
> then I should add -lbcrypt to my linker flags to resolve these
> references, and indeed if I execute the failing gdb link command and
> add -lbcrypt at the end then my link succeeds.

What version of MS-Windows is that?

What is the value of gl_cv_lib_assume_bcrypt in gnulib/config.cache?
And what do you see in gnulib/config.log about the test

  checking whether the bcrypt library is guaranteed to be present

> Is this an issue that anyone has seen before? It's not clear on my
> side whether there's an issue with my environment causing that
> dependency to be needed, and something missing from the GDB makefiles.

Hmm, looks like we are missing LIB_GETRANDOM in gdb/Makefile?

More information about the Gdb mailing list