#381306 ld exits succesfuly when attempting horrid linking of mixed 32/64 bit objects

Package:
binutils
Source:
binutils
Description:
GNU assembler, linker and binary utilities
Submitter:
Robert Millan
Date:
2014-10-19 17:51:35 UTC
Severity:
important
#381306#5
Date:
2006-08-03 15:37:09 UTC
From:
To:
This was found while trying to build a biarch wine on amd64.  As a result of ld
exitting with zero, the configure script thinks /usr/lib/libsicuuc.a is usable,
but in fact it's not.

Patch attached.

$ cat test.c
#include <unicode/ubidi.h>
int
main ()
{
ubidi_open()
  ;
  return 0;
}
$ gcc -m32 -o test -O2 -g  -L/lib32 -L/usr/lib32 -Wl,-rpath,/lib32 -Wl,-rpath,/usr/lib32 test.c  /usr/lib/libsicuuc.a /usr/lib/libsicudata.a -lstdc++ -lgcc_s
/usr/bin/ld: warning: i386:x86-64 architecture of input file `/usr/lib/libsicuuc.a(ubidi.ao)' is incompatible with i386 output
[...]
$ ./test
Segmentation fault

#381306#10
Date:
2007-04-19 18:58:33 UTC
From:
To:
Bumping this because this patch is required to be able to compile Wine
on a 64bit Debian system so having to manually patch this is quite
irritating (thus still a problem with current binutils).