Hi,

To the best of my knowledge, I have not changed the way I've linked
in my library, yet something clearly has changed.  My library is built
with these automake rules/assignments:

> nodist_libopts_la_SOURCES = libopts.c
> libopts_la_SOURCES        = $(HDRS)
> libopts_la_LIBADD         = ../snprintfv/libsnprintfv.la
> libopts_la_LDFLAGS        = -version-info $(LIBOPTS_VER)

(the libopts.la file is attached)

My link looks like this:

> nodist_autogen_SOURCES = ag.c
> autogen_SOURCES = $(GEN_CSRC)
> autogen_LDADD   = $(top_builddir)/autoopts/libopts.la $(LIBGUILE_LIBS)
> autogen_LDFLAGS = $(DYNAMIC_AG)

The resulting commands are:

> if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../autoopts    \
>     -MT autogen-ag.o -MD -MP -MF ".deps/autogen-ag.Tpo" \
>    -c -o autogen-ag.o `test -f 'ag.c' || echo './'`ag.c; \
> then mv -f ".deps/autogen-ag.Tpo" ".deps/autogen-ag.Po"; \
>    else rm -f ".deps/autogen-ag.Tpo"; exit 1; fi
> /bin/sh ../libtool --tag=CC --mode=link gcc     -o autogen \
>    -export-dynamic  autogen-ag.o ../autoopts/libopts.la -lguile  \
>   -lguile-ltdl -lqthreads -lpthread -lcrypt -lm -lm -Wl,-R/usr/local/lib -ldl
> mkdir .libs
> gcc -o .libs/autogen autogen-ag.o -Wl,-R/usr/local/lib -Wl,--export-dynamic \
>     ../autoopts/.libs/libopts.so /usr/lib/libguile.so 
> /usr/lib/libguile-ltdl.so  \
>   /usr/lib/libqthreads.so -lpthread -lcrypt -lm -ldl
> creating autogen

And I get this, from building in /home/bkorb/ag/ag/agen5:

> $ ldd .libs/lt-autogen
>         linux-gate.so.1 =>  (0xffffe000)
>         libopts.so.9 => /local/lib/libopts.so.9 (0x40018000)

** OOPS ** this is the _installed_ libopts, not the one I just built!!!
Setting LD_LIBRARY_PATH to include /home/bkorb/ag/ag/autoopts/.libs
gets around the problem, but that should not be necessary....

>         libguile.so.12 => /usr/lib/libguile.so.12 (0x40046000)
>         libguile-ltdl.so.1 => /usr/lib/libguile-ltdl.so.1 (0x400e8000)
>         libqthreads.so.12 => /usr/lib/libqthreads.so.12 (0x400ed000)
>         libpthread.so.0 => /lib/tls/libpthread.so.0 (0x400ef000)
>         libcrypt.so.1 => /lib/libcrypt.so.1 (0x40100000)
>         libm.so.6 => /lib/tls/libm.so.6 (0x40131000)
>         libdl.so.2 => /lib/libdl.so.2 (0x40153000)
>         libc.so.6 => /lib/tls/libc.so.6 (0x40156000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

Thank you for any help!

Regards, Bruce
# libopts.la - a libtool library file
# Generated by ltmain.sh - GNU libtool 1.5.2 (1.1220.2.60 2004/01/25 12:25:08)
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libopts.so.9'

# Names of this library.
library_names='libopts.so.9.15.0 libopts.so.9 libopts.so'

# The name of the static archive.
old_library='libopts.a'

# Libraries that this one depends upon.
dependency_libs=' -lm -ldl '

# Version information for libopts.
current=24
age=15
revision=0

# Is this an already installed library?
installed=no

# Should we warn about portability when linking against -modules?
shouldnotlink=no

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/usr/local/lib'
_______________________________________________
http://lists.gnu.org/mailman/listinfo/libtool

Reply via email to