[gnutls-dev] Guile problems in 1.7.12

Ludovic Courtès ludo at gnu.org
Wed Jun 27 22:29:46 CEST 2007


Hi,

Simon Josefsson <simon at josefsson.org> writes:

> ludo at chbouib.org (Ludovic Courtès) writes:
>
>> Simon Josefsson <simon at josefsson.org> writes:
>>
>>> Still, the paths look right for me:
>>
>> I think I got it (I hope so!):
>>
>>   * On my machine, Guile is installed in `/usr/local/'.  Thus,
>>     `GUILE_LDFLAGS' contain `-L /usr/local/lib', which leads Libtool to
>>     add `/usr/local/lib' to RPATH.
>>
>>   * On your machine, Guile is installed in `/usr', so this does not
>>     happen.  And a `-L /usr/local/lib' to your Libtool link command-line
>>     and you'll make the same observations as I do.
>>
>> Unless I'm mistaken, the fix is to revert your `_LIBADD' patch and get
>> back to something along the lines of:
>>
>>   libXXX_LDFLAGS = $(GNUTLS_CORE_LIBS) $(GNUTLS_EXTRA_LIBS) \
>>                    $(GUILE_LDFLAGS)
>>
>> which makes sure that third-party libs (here, Guile) appear last.
>
> I didn't reply to this mail.  Is this still a problem for you?  I think
> it is more correct to use LIBADD rather than LDFLAGS here, so I'd like
> to debug why that doesn't work (and possibly report it as a bug) before
> making a change.

Well, I had forgotten about it too, but that's still valid.  ;-)

To sum up: on my machine, Guile is installed in `/usr/local/lib', and so
is GnuTLS.  The libtool link command-line looks like:

  -L/usr/local/lib -lguile  ...  ../../lib/libgnutls.la  ... \
  -o libguile-gnutls.la

The first `-L' leads libtool to add `/usr/local/lib' to the RPATH of
`libguile-gnutls.so'; the `../../lib/libgnutls.la' that follows leads
libtool to *append* `../../lib/.libs' to the RPATH.  Consequently, the
`libgnutls.so' and `libguile-gnutls.so' that are picked up at run-time
are those from `/usr/local/lib', *not* the freshly-built ones.

The proposed fix (above) fixes the problem.  That the `XXX_LIBS' vars
would better fit in `XXX_LIBADD' than in `XXX_LDFLAGS' really isn't an
issue: there's nothing in the libtool manual that forbids listing
libtool archives as part of LDFLAGS.

Is that clearer?

Thanks,
Ludovic.




More information about the Gnutls-dev mailing list