Subject: Re: bug#28493: 26.0.50; Build failure with latest MSYS2

From: Eli Zaretskii <[email-masked]>
Date: Tue, 19 Sep 2017 07:07:30 +0300

> From: Richard Copley <[email-masked]>
> Date: Mon, 18 Sep 2017 21:06:31 +0100
> Cc: [email-masked]
> 
> > In what import library do you have ScriptFreeCache? in libgdi32.a or
> > in libusp10.a?  I see it in the latter?
> 
> Both?
> 
> $ nm libgdi32.a
> [...]
> dqeobs00686.o:
> 0000000000000000 b .bss
> 0000000000000000 d .data
> 0000000000000000 i .idata$4
> 0000000000000000 i .idata$5
> 0000000000000000 i .idata$6
> 0000000000000000 i .idata$7
> 0000000000000000 t .text
> 0000000000000000 I __imp_ScriptFreeCache
>                  U _head_lib64_libgdi32_a
> 0000000000000000 T ScriptFreeCache
> [...]
> 
> $ nm libusp10.a
> [...]
> dmovds00006.o:
> 0000000000000000 b .bss
> 0000000000000000 d .data
> 0000000000000000 i .idata$4
> 0000000000000000 i .idata$5
> 0000000000000000 i .idata$6
> 0000000000000000 i .idata$7
> 0000000000000000 t .text
> 0000000000000000 I __imp_ScriptFreeCache
>                  U _head_lib64_libusp10_a
> 0000000000000000 T ScriptFreeCache
> [...]

Interesting.  Do you have pexports.exe or some other tool that can
display the exports of a DLL?  (Not sure pexports supports 64-bit
DLLs, though.)  If so, can you look in your gdi32.dll and see whether
it really exports this function?  If it doesn't, then this looks like
a problem with the import libraries, although I see no problem in
changing the order of the link command line to fix it.