[Clfs-support] strange libtool

mike spam at kleiderschrank51.de
Sat Oct 4 15:36:07 PDT 2008


Ken Moffat schrieb:
> On Sat, Oct 04, 2008 at 12:46:55PM +0000, mike wrote:
>   
>> hi all
>>
>> i have a strange issue with libtool. when i compile with -m64, some 
>> packages (kdelibs, kdebase, dbus-1-qt3 & others)want link wrong against 
>> /usr/X11R7/lib/libXmu.so. and every this lib!?
>> my 'workaround' for this was a temporarily symlink from /usr/X11/lib at 
>> /usr/X11/lib64 during compile time. the 32libs are in /usr/X11/libb and 
>> normaly /usr/X11/lib points to /usr/X11/libb.
>>
>> for example dbus-1-qt3:
>> sed -i "/search_libs/s/lib/&64/g" configure &&
>> CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 
>> PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
>> ./configure --prefix=/usr --libdir=/usr/lib64 
>> --with-qt-libraries=${QTDIR}/lib64 &&
>> make
>> ..
>>     
>  Probably, one or two commonly used libraries are causing the
> problem.  If you can identify the _earliest_ package where you had
> to do this, try running its configure without the extra overrides,
> then look at the output (probably, config.log) to see which
> package(s) decided that /usr/lib was wanted.  Unfortunately,
> this part is tedious (hopefully, you can search for 'lib/' to skip
> over the correct lib64 references).
>
>  Then, look through the configure script to find *how* it searches
> for this package (often, but not always, using pkgconfig).  I've
> seen the *reverse* situation (32-bit libraries generally needing
> overrides), but that was caused by not having wrapped versions of
> -config programs.  I think I had something similar (again, not
> necessarily libtool-related) on my first multilib system, but never
> traced why - in those days I was content to just get it to work.
>
>  But first, please check the xmu.pc and xmuu.pc pkgconfig files for
> both sizes, to make sure they are correct, and in the correct
> directories, and also check that your scripts are using the correct
> PKG_CONFIG_PATH whenever you change from/to 32/64-bit.
>
>  BTW, I'm curious why you put xorg into /usr/X11R7 instead of just
> /usr ?
>
> ĸen
>   
xmu.pc and xmuu.pc are on the correct place and with correct content.  
PKG_CONFIG_PATH is also ok.
so i looked  in configure and makefile.am and so on.
this are strange autoconf people...
the only one that i found  was the libtool is more friendly without 
'--silent' flag:

/bin/sh ./libtool --tag=CXX --mode=link gcc -m64  -Wall -W 
-Wpointer-arith -O2 -fno-exceptions -fno-check-new -fno-common    -o 
dbusxml2qt3 -L/opt/qt/lib64 classgen.o main.o methodgen.o -lqt-mt  -lz 
-lpng -lz -lm -lXext -lX11  -lSM -lICE -lpthread -L/usr/X11R7/lib64 
-L/usr/X11R7/lib64
gcc -m64 -Wall -W -Wpointer-arith -O2 -fno-exceptions -fno-check-new 
-fno-common -o dbusxml2qt3 classgen.o main.o methodgen.o  
-L/opt/qt/lib64 /opt/qt-3.3.8/lib64/libqt-mt.so -L/usr/lib64 
-L/usr/X11R7/lib64 -lmysqlclient -lGL /usr/X11R7/lib/libXmu.so 
/usr/X11R7/lib/libXi.so /usr/X11R7/lib/libXrender.so 
/usr/X11R7/lib/libXrandr.so /usr/X11R7/lib/libXcursor.so 
/usr/X11R7/lib/libXinerama.so /usr/X11R7/lib/libXft.so 
/usr/lib64/libfreetype.so /usr/lib64/libfontconfig.so 
/usr/X11R7/lib/libXext.so /usr/X11R7/lib/libX11.so 
/usr/X11R7/lib/libSM.so /usr/X11R7/lib/libICE.so /usr/lib64/libpng12.so 
-lz -lm /usr/X11R7/lib64/libXext.so /usr/X11R7/lib64/libX11.so 
/usr/X11R7/lib64/libxcb-xlib.so /usr/X11R7/lib64/libxcb.so 
/usr/X11R7/lib64/libXau.so /usr/X11R7/lib64/libXdmcp.so -ldl 
/usr/X11R7/lib64/libSM.so -luuid /usr/X11R7/lib64/libICE.so -lpthread 
-Wl,--rpath -Wl,/opt/qt-3.3.8/lib64 -Wl,--rpath -Wl,/usr/X11R7/lib 
-Wl,--rpath -Wl,/usr/X11R7/lib64 -Wl,--rpath -Wl,/opt/qt-3.3.8/lib64 
-Wl,--rpath -Wl,/usr/X11R7/lib -Wl,--rpath -Wl,/usr/X11R7/lib64
/usr/X11R7/lib/libXmu.so: could not read symbols: File in wrong format
 
here you can see that the /usr/X11R7/lib64 is correctly set but someone 
gives the local libtool wrong information about ALL X-libs. i tried some 
env-vars - without look. its cracy. i think the wrong comes from -lqt-mt 
but i don't know how it handled.




More information about the Clfs-support mailing list