[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
library relinking problem
From: |
David Bustos |
Subject: |
library relinking problem |
Date: |
Wed, 15 Jan 2003 15:59:15 -0800 |
User-agent: |
Mutt/1.4i |
I'm trying to install pango at my site, which has an unusual repository
structure. Specifically, platform-independent files go into
/repository/share/pango-1.0.5, and platform-dependent files go in
/repository/$platform/pango-1.0.5. Symlinks (and NFS trickery) are used
to make the software appear in /repository.
Pango builds ok. But installation goes at this output: (Here,
/repository is /home/bustos/kg, and platform is "sparc".)
========================================================================
...
/bin/bash ../libtool --mode=install /home/kg/bin/ginstall -c libpangox-1.0.la
/home/bustos/kg/sparc/pango-1.0.5/lib/libpangox-1.0.la
libtool: install: warning: relinking `libpangox-1.0.la'
cd /home/bustos/src/pango-1.0.5/pango; /bin/bash ../libtool --mode=relink gcc
-O3 -Wall -D_REENTRANT -I/home/kg/include/glib-2.0
-I/home/kg/lib/glib-2.0/include -o libpangox-1.0.la -rpath /home/bustos/kg/lib
-version-info 0:5:0 module-defs-x.lo pangox.lo pangox-fontcache.lo
pangox-fontmap.lo pango-indic.lo libpango-1.0.la
../modules/basic/libpango-basic-x.la -lX11 -lsocket -lnsl
/usr/ccs/bin/ld -G -h libpangox-1.0.so.0 -o .libs/libpangox-1.0.so.0.0.5
module-defs-x.lo pangox.lo pangox-fontcache.lo pangox-fontmap.lo pango-indic.lo
-z allextract ../modules/basic/.libs/libpango-basic-x.al -z defaultextract
-R/home/bustos/kg/lib -L/home/kg/lib -L/home/bustos/kg/lib -lpango-1.0
../modules/basic/.libs/libpango-basic-x.al -lX11 -lsocket -lnsl -lc
ld: fatal: library -lpango-1.0: not found
ld: fatal: File processing errors. No output written to
.libs/libpangox-1.0.so.0.0.5
libtool: install: error: relink `libpangox-1.0.la' with the above command
before installing it
libtool: install: warning: remember to run `libtool --finish
/home/bustos/kg/lib'
...
========================================================================
and the installation process fails farther down the line.
First, ld can't find libpango-1.0 because it's been installed into
/home/bustos/kg/sparc/pango-1.0.5/lib, but that directory isn't on the
command line. I think libtool is using /home/bustos/kg/lib because
that's what libdir is set to in libpango-1.0.la. Which is where it will
be in the end, but until the symlinks are installed, it won't show up.
To verify this, I modified libtool thusly:
--- libtool.old Tue Dec 17 16:35:30 2002
+++ libtool Tue Dec 17 16:35:09 2002
@@ -2169,11 +2169,18 @@
*) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
esac
add="-l$name"
else
# We cannot seem to hardcode it, guess we'll fake it.
- add_dir="-L$libdir"
+ case $libdir in
+ /home/bustos/kg/lib)
+ add_dir="-L/home/bustos/kg/sparc/pango-1.0.5/lib"
+ ;;
+ *)
+ add_dir="-L$libdir"
+ ;;
+ esac
add="-l$name"
fi
if test $linkmode = prog; then
test -n "$add_dir" && finalize_deplibs="$add_dir
$finalize_deplibs"
and indeed installation succeeded. So, is pango doing something wrong?
If not, how can libtool be fixed to use the installation directory
rather than the destination directory?
Second, is libtool returning an error code? If so, why does make
continue anyway?
David
- library relinking problem,
David Bustos <=