libtool
[Top][All Lists]
Advanced

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

Re: Now some joy.... 8-O !!


From: Bruce Korb
Subject: Re: Now some joy.... 8-O !!
Date: Wed, 23 Feb 2005 07:20:35 -0800
User-agent: KMail/1.7.1

Hi Gary!

The solution is at the bottom.  I stumbled onto it by playing
around with "env -"  prefixes on various commands.

On Wednesday 23 February 2005 04:15 am, Gary V. Vaughan wrote:
> Hallo Bruce!

> You only need -export-dynamic if you are going to use lt_dlopen (NULL)
> to get a reflective module handle... and even then, I think you only

It actually doesn't affect anything.  I think it is a dinkleberry
from an occasion when I was twiddling everything until something worked.

> > The net result:
> > 
> >>+ /home/bkorb/ag/ag/agen5/autogen \
> >>-L/home/bkorb/ag/ag/autoopts argument.def
> >>/home/bkorb/ag/ag/agen5/.libs/lt-autogen: symbol lookup error: \
> >>/home/bkorb/ag/ag/agen5/.libs/lt-autogen: undefined symbol: optionStackArg
> 
> Is this an error from the runtime linker?  Or from a dlsym/lt_dlsym call?

It is from ld.so.

> What does "ldd .libs/lt-autogen" give you?  What about "../libtool
> -mode=execute ldd ./autogen"?
> 
> >>+ failure AutoGen could not process
> >>
> >>$ nm /home/bkorb/ag/ag/autoopts/.libs/libopts.so|fgrep optionStackArg
> >>0000bb31 T optionStackArg
> 
> Presumably "nm /usr/local/lib/libopts.so | grep optionStackArg" give U?

$ env - ldd ag/ag/agen5/.libs/lt-autogen
        linux-gate.so.1 =>  (0xffffe000)
        libopts.so.25 => /home/bkorb/ag/ag/autoopts/.libs/libopts.so.25 
(0x40018000)
        libguile.so.12 => /usr/lib/libguile.so.12 (0x40050000)
        libguile-ltdl.so.1 => /usr/lib/libguile-ltdl.so.1 (0x400f2000)
        libqthreads.so.12 => /usr/lib/libqthreads.so.12 (0x400f7000)
        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x400f9000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x4010b000)
        libm.so.6 => /lib/tls/libm.so.6 (0x4013d000)
        libdl.so.2 => /lib/libdl.so.2 (0x40161000)
        libc.so.6 => /lib/tls/libc.so.6 (0x40165000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
$ nm /home/bkorb/ag/ag/autoopts/.libs/libopts.so.25 | fgrep optionStackArg
0000bb31 T optionStackArg

Bizarre.  If I set and export LD_LIBRARY_PATH to 
/home/bkorb/ag/ag/autoopts/.libs
then all is well.

> Argh, the attached wrapper appears to be clearing LD_LIBRARY_PATH.

Setting it to /home/bkorb/ag/ag/autoopts/.libs resolves the problem.

> Are you using fast-install mode (./configure --enable-fast-install)?
No.  I tried --disable-fast-install, but it wasn't helpful.
I believe fast-install is enabled by default (otherwise there would
not be a "lt-autogen" executable lying about).

> Does the autogen binary install without needing to be relinked?
$ env - ldd ag/ag/agen5/.libs/autogen
        linux-gate.so.1 =>  (0xffffe000)
        libopts.so.25 => /usr/local/lib/libopts.so.25 (0x40018000)
        libguile.so.12 => /usr/lib/libguile.so.12 (0x4004e000)
        libguile-ltdl.so.1 => /usr/lib/libguile-ltdl.so.1 (0x400f0000)
        libqthreads.so.12 => /usr/lib/libqthreads.so.12 (0x400f5000)
        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x400f7000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x40109000)
        libm.so.6 => /lib/tls/libm.so.6 (0x4013b000)
        libdl.so.2 => /lib/libdl.so.2 (0x4015f000)
        libc.so.6 => /lib/tls/libc.so.6 (0x40163000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
I do not think a relink is necessary.

> What architecture are you running all of this on at the moment?
Some funny off-the-wall platform:
$ uname -a ; ag/ag/config/config.guess
Linux bach 2.6.8-24.11-default #1 Fri Jan 14 13:01:26 UTC 2005 i686
i686-pc-linux-gnu
========================================================================
The solution comes from not using LD_RUN_PATH.  That affects ld.so's
behavior in the libtool replacement script.  I have it set because my
stock ".profile" scripts add it to cover oddball libraries.  It avoids
nuisances for non-libtool builds.  So all I have to do is unset it in
my build-and-test script.

Thank you, Gary.  Your queries got me onto the path to the solution!

Regards, Bruce




reply via email to

[Prev in Thread] Current Thread [Next in Thread]