Bug in CYGWIN's UUID library: GUID_NULL not found.
Takashi Yano
takashi.yano@nifty.ne.jp
Mon Feb 20 16:01:15 GMT 2023
On Mon, 20 Feb 2023 16:48:50 +0100
"Carlo B. wrote:
> Hello,
> I think that there is a bug into the uuid library, the one to be used
> with the W32API for the POSIX core.
> Please have a look to the following tiny test code:
>
> //====================
> #include <windows.h>
> #include <initguid.h>
> #include <ks.h>
> #include <stdio.h>
>
> int main()
> {
> printf("GUID_NULL=\"%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X\"\n",
> GUID_NULL.Data1,
> GUID_NULL.Data2, GUID_NULL.Data3,
> GUID_NULL.Data4[0], GUID_NULL.Data4[1],
> GUID_NULL.Data4[2], GUID_NULL.Data4[3],
> GUID_NULL.Data4[4], GUID_NULL.Data4[5],
> GUID_NULL.Data4[6], GUID_NULL.Data4[7]
> );
>
> return 0;
> }
> //====================
>
> Compiling it with x86_64-pc-cygwin or i686-pc-cygwin does not work:
>
> $ gcc e.c -o e.exe -luuid
> /usr/lib/gcc/x86_64-pc-cygwin/11/../../../../x86_64-pc-cygwin/bin/ld:
> /tmp/ccyJK3d9.o:e.c:(.rdata$.refptr.GUID_NULL[.refptr.GUID_NULL]+0x0):
> undefined reference to `GUID_NULL'
> collect2: error: ld returned 1 exit status
You linked /usr/lib/libuuid.dll.a rather than /usr/lib/w32api/libuuid.a.
You might want: gcc e.c -o e.exe -L/usr/lib/w32api -luuid
--
Takashi Yano <takashi.yano@nifty.ne.jp>
More information about the Cygwin
mailing list