On 3/4/20 8:59 AM, Joachim Metz wrote: > I maintain numerous projects, as part of that I've set up CI tests that use > current Cygwin 32-bit and 64-bit. Recently I've noticed that builds were > failing with errors like: > > https://ci.appveyor.com/project/libyal/libfwsi/build/job/7b822r4j4ghfs2m5#L953 > > /usr/lib/gcc/i686-pc-cygwin/9.2.0/../../../../i686-pc-cygwin/bin/ld: > fwsi_test_error.o: in function `fwsi_test_error_sprint': > /home/appveyor/libfwsi/tests/fwsi_test_error.c:72: undefined reference to > `_imp__libfwsi_error_sprint' > > https://ci.appveyor.com/project/libyal/libfwsi/build/job/3qnu5pk3lm4u12pe#L960 > > /home/appveyor/libfwsi/tests/fwsi_test_error.c:72: undefined reference to > `__imp_libfwsi_error_sprint' > /home/appveyor/libfwsi/tests/fwsi_test_error.c:72:(.text.startup+0x24): > relocation truncated to fit: R_X86_64_PC32 against undefined symbol > `__imp_libfwsi_error_sprint' > > Since I did not make significant changes to the project sources I started > analyzing the build environment. I was able to reproduce the issues > with binutils 2.34-1 on Cygwin 64-bit on a separate Windows 10 > installation. > > When I reverted to binutils 2.31-1 the build issues do NOT surface. I > suspect a change or issue with binutils 2.34-1 is causing the build issues. > Happy to provide additional details / help troubleshooting where possible. > > Kind regards, > Joachim > Can you compare the objects where that symbol is supposed to be defined and the objects where it is supposed to be referenced between the 2 binutils versions? Can you make a minimalist test case? Might be a good idea to file a ticket with binutils too.