[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

gcc unable to find 32-bit gtk-x11-2.0 library (x86_64)



Hi all,

I am currently investigating a build failure of GNU Classpath/Jikes RVM
on Debian Squeeze 6.0.4 (cf. <http://jira.codehaus.org/browse/RVM-942>):

The problem is that gcc is unable to find the 32-bit gtk-x11-2.0
library, even though it sits right there in /usr/lib32:

>> ls /usr/lib32/libgdk-x11-2.0*
> /usr/lib32/libgdk-x11-2.0.so.0  /usr/lib32/libgdk-x11-2.0.so.0.2000.1

The offending gcc command used by during the Jikes RVM build boils down
to this:

>> gcc -m32 -L/usr/lib32 -lgdk-x11-2.0
> /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../libgdk-x11-2.0.so when searching for -lgdk-x11-2.0
> /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../libgdk-x11-2.0.a when searching for -lgdk-x11-2.0
> /usr/bin/ld: skipping incompatible /usr/lib/libgdk-x11-2.0.so when searching for -lgdk-x11-2.0
> /usr/bin/ld: skipping incompatible /usr/lib/libgdk-x11-2.0.a when searching for -lgdk-x11-2.0
> /usr/bin/ld: cannot find -lgdk-x11-2.0

(The "-m32" is needed as Jikes RVM itself is really a 32-bit VM.)

Also, /usr/lib32 *is* part of gcc's search dirs, at least as far as I
can tell:

>> gcc -m32 -L/usr/lib32 -lgdk-x11-2.0 -print-search-dirs  
> install: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/
> programs: =/usr/lib/gcc/x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/libexec/gcc/x86_64-linux-gnu/4.4.5/:/usr/libexec/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../x86_64-linux-gnu/bin/x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../x86_64-linux-gnu/bin/
> libraries: =/usr/lib/gcc/x86_64-linux-gnu/4.4.5/32/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/32/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../x86_64-linux-gnu/lib/x86_64-linux-gnu/4.4.5/32/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../x86_64-linux-gnu/lib/../lib32/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../x86_64-linux-gnu/4.4.5/32/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib32/:/lib/x86_64-linux-gnu/4.4.5/32/:/lib/../lib32/:/usr/lib/x86_64-linux-gnu/4.4.5/32/:/usr/lib/../lib32/:/usr/lib/x86_64-linux-gnu/x86_64-linux-gnu/4.4.5/32/:/usr/lib/x86_64-linux-gnu/../lib32/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../x86_64-linux-gnu/lib/x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../x86_64-linux-gnu/lib/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../x86_64-linux-gnu/4.4.5/:/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../:/lib/x86_64-linux-gnu/4.4.5/:/lib/:/usr/lib/x86_64-
linux-gnu/4.4.5/:/usr/lib/:/usr/lib/x86_64-linux-gnu/x86_64-linux-gnu/4.4.5/:/usr/lib/x86_64-linux-gnu/

Does anyone see what's causing the problem? (It's probably really
obvious for someone more experienced with this 32/64-bit mess, but
Google didn't turn up an answer useful to me.)

Best wishes,

Andreas


Reply to: