odd build failure in ld

Alan Modra amodra@gmail.com
Mon Mar 3 23:57:00 GMT 2014

On Mon, Mar 03, 2014 at 12:31:45PM -0700, Tom Tromey wrote:
> I am building on x86-64 Fedora 18.  I use --enable-targets=all.
> Whenever ld/default-manifest.o needs to be rebuilt, I get:
>     barimba. rm default-manifest.o
>     barimba. make default-manifest.o
>     ../binutils/windres -o default-manifest.o ../../binutils-gdb/ld/emultempl/default-manifest.rc
>     ../binutils/windres: can't get BFD_RELOC_RVA relocation type: No error
>     make: *** [default-manifest.o] Error 1

Looks like windres is opening the output file using the default target.

(gdb) p *cwi->wrbfd->abfd->xvec
$5 = {name = 0x7d3ac3 "elf64-x86-64", flavour = bfd_target_elf_flavour,

Presumably default-manifest.o ought to be a COFF file of some sort, so
windres shouldn't use the default target.  Adding "-F pe-x86-64" to the
windres invocation works around the problem, but is probably not the
correct solution.

Alan Modra
Australia Development Lab, IBM

More information about the Binutils mailing list