Re: gnome-system-monitor build problem



On Mon, May 27, 2002 at 07:57:10PM +1000, Jeff Waugh wrote:
> <quote who="Guido Guenther">
> 
> > ls  /usr/X11R6/lib/libXau* gives /usr/X11R6/lib/libXau.a.
> > so it has to be explicitly appended during linkage. When adding -lXau to the
> > above build line it works. Does this show on other architectures as well?
> 
> No, it doesn't, but I have only an archive on my system (x86) too. Haven't
> seen this problem at all thus far...
it turned out that the build of libgtop_common is broken on linux-mips:
On mips XauReadAuth is an undefined symbol:
 libgtop_common-2.0.so | grep Xau
 U XauGetAuthByAddr
but on i386:
  nm libgtop_common-2.0.so | grep Xau
 00002860 T XauDisposeAuth
 000028e0 T XauFileName
 000024d0 T XauGetAuthByAddr
 000026dc T XauReadAuth
the build of libgtop_common didn't pull in the necessary AuGetAddr.o from
libXau.a. Build line on mips:
gcc -shared  xmalloc.lo error.lo gnuslib.lo fsusage.lo mountlist.lo -Wl,--rpath -Wl,/home/agx/garnome/lib -Wl,--rpath -Wl,/home/agx/garnome/lib  -L/home/agx/garnome/lib -L/usr/X11R6/lib /home/agx/garnome/lib/libglib-2.0.so  -Wl,-soname -Wl,libgtop_common-2.0.so.0 -o .libs/libgtop_common-2.0.so.0.0.2
again on i386 we have:
gcc -shared  xmalloc.lo error.lo gnuslib.lo fsusage.lo mountlist.lo  -Wl,--rpath -Wl,/localscratch/guido/garnome/lib -Wl,--rpath -Wl,/localscratch/guido/garnome/lib  -L/localscratch/guido/garnome/lib -L/usr/X11R6/lib -lXau /localscratch/guido/garnome/lib/libglib-2.0.so  -Wl,-soname -Wl,libgtop_common-2.0.so.0 -o .libs/libgtop_common-2.0.so.0.0.2
so mips is indeed missing a -lXau.
The trouble is caused by broken libtool. The version that is generated by
./configure says:
 deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )"
which is wrong and should read instead:
 deplibs_check_method="pass_all"
Possible patch to ./configure attached, but this should better be fixed
in upstream's autotools magic[1]. I cc'ed one of the upstream authors,
since I didn't find a appropriate mailing list.
Regards,
 -- Guido

[1] shouldn't "pass_all" be the default for linux-* anyway, to avoid
further trouble with new architectures?
--- libgtop-1.90.2/configure.orig	Sun Feb 10 15:30:14 2002
+++ libgtop-1.90.2/configure	Tue May 28 18:41:03 2002
@@ -4001,7 +4001,7 @@
 # This must be Linux ELF.
 linux-gnu*)
   case $host_cpu in
-  alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* | s390* )
+  alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* | s390* | mips* )
     lt_cv_deplibs_check_method=pass_all ;;
   *)
     # glibc up to 2.1.1 does not perform some relocations on ARM


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