gnutls-devel
[Top][All Lists]
Advanced

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

Re: [gnutls-dev] Guile problems in 1.7.12


From: Simon Josefsson
Subject: Re: [gnutls-dev] Guile problems in 1.7.12
Date: Tue, 12 Jun 2007 15:46:01 +0200
User-agent: Gnus/5.110007 (No Gnus v0.7) Emacs/22.0.95 (gnu/linux)

address@hidden (Ludovic Courtès) writes:

> Hi,
>
> Simon Josefsson <address@hidden> writes:
>
>> Did you do a clean build?
>
> Yes.
>
> The link command here is:
>
>   /bin/sh ../../libtool --tag=CC --mode=link ccache gcc -std=gnu99
>   -D_REENTRANT -D_THREAD_SAFE [... CFLAGS ...] -I../../lgl -I../../lgl
>   -I/usr/local/include -pthread -D_REENTRANT -D_THREAD_SAFE
>   -Wno-pointer-sign -pthread -lguile -lltdl -L/usr/local/lib -lgmp
>   -lcrypt -lm -lltdl -o libguile-gnutls-v-0.la -rpath /usr/local/lib
>   libguile_gnutls_v_0_la-core.lo libguile_gnutls_v_0_la-errors.lo
>   libguile_gnutls_v_0_la-utils.lo ../../lib/libgnutls.la
>   ../../lgl/liblgnu.la
>
> That is, `_LDFLAGS' appear before `_LIBADD', which we don't want.  Is it
> the same at your place?

I think I get the same:

/bin/sh ../../libtool --tag=CC   --mode=link gcc -std=gnu99 -D_REENTRANT 
-D_THREAD_SAFE -g -Wall -Wcast-align -W -Wpointer-arith -Wchar-subscripts 
-Wformat-security -Wno-format-y2k -Wmissing-braces -Winline -Wstrict-prototypes 
-Wno-unused-parameter -pipe -I/usr/local/include  -I/usr/local/include 
-Wno-strict-prototypes -I../../lgl -I../../lgl  -D_REENTRANT -D_THREAD_SAFE 
-Wno-pointer-sign -lguile -lltdl  -lgmp -lcrypt -lm -lltdl  -o 
libguile-gnutls-v-0.la -rpath /usr/local/lib libguile_gnutls_v_0_la-core.lo 
libguile_gnutls_v_0_la-errors.lo libguile_gnutls_v_0_la-utils.lo 
../../lib/libgnutls.la ../../lgl/liblgnu.la

Still, the paths look right for me:

address@hidden:~/src/gnutls/guile/src$ objdump -p 
.libs/libguile-gnutls-*.so|grep PATH
  RPATH       
/home/jas/src/gnutls/lib/.libs:/home/jas/src/gnutls/libextra/.libs:/home/jas/src/gnutls/guile/src/.libs:/usr/local/lib
  RPATH       /home/jas/src/gnutls/lib/.libs:/usr/local/lib
address@hidden:~/src/gnutls/guile/src$

I also did a clean build (from raw checkout sources, via 'gitco') to
double check.

Maybe we need to compare more.  Here is the complete output from
make+rm+make:

address@hidden:~/src/gnutls/guile/src$ make
make  all-am
make[1]: Entering directory `/home/jas/src/gnutls/guile/src'
make[1]: Nothing to be done for `all-am'.
make[1]: Leaving directory `/home/jas/src/gnutls/guile/src'
address@hidden:~/src/gnutls/guile/src$ rm libguile-gnutls-v-0.la
address@hidden:~/src/gnutls/guile/src$ make
make  all-am
make[1]: Entering directory `/home/jas/src/gnutls/guile/src'
/bin/sh ../../libtool --tag=CC   --mode=link gcc -std=gnu99 -D_REENTRANT 
-D_THREAD_SAFE -g -Wall -Wcast-align -W -Wpointer-arith -Wchar-subscripts 
-Wformat-security -Wno-format-y2k -Wmissing-braces -Winline -Wstrict-prototypes 
-Wno-unused-parameter -pipe -I/usr/local/include  -I/usr/local/include 
-Wno-strict-prototypes -I../../lgl -I../../lgl  -D_REENTRANT -D_THREAD_SAFE 
-Wno-pointer-sign -lguile -lltdl  -lgmp -lcrypt -lm -lltdl  -o 
libguile-gnutls-v-0.la -rpath /usr/local/lib libguile_gnutls_v_0_la-core.lo 
libguile_gnutls_v_0_la-errors.lo libguile_gnutls_v_0_la-utils.lo 
../../lib/libgnutls.la ../../lgl/liblgnu.la
rm -fr  .libs/libguile-gnutls-v-0.a .libs/libguile-gnutls-v-0.la 
.libs/libguile-gnutls-v-0.lai .libs/libguile-gnutls-v-0.so 
.libs/libguile-gnutls-v-0.so.0 .libs/libguile-gnutls-v-0.so.0.0.0
gcc -std=gnu99 -shared  .libs/libguile_gnutls_v_0_la-core.o 
.libs/libguile_gnutls_v_0_la-errors.o .libs/libguile_gnutls_v_0_la-utils.o 
-Wl,--whole-archive ../../lgl/.libs/liblgnu.a -Wl,--no-whole-archive  
-Wl,--rpath -Wl,/home/jas/src/gnutls/lib/.libs -Wl,--rpath -Wl,/usr/local/lib 
-Wl,--rpath -Wl,/usr/local/lib /usr/lib/libguile.so /usr/lib/libgmp.so -lcrypt 
-lm /usr/lib/libltdl.so ../../lib/.libs/libgnutls.so -L/usr/local/lib 
/usr/local/lib/libgcrypt.so -lnsl /usr/local/lib/libgpg-error.so  -Wl,-soname 
-Wl,libguile-gnutls-v-0.so.0 -o .libs/libguile-gnutls-v-0.so.0.0.0
(cd .libs && rm -f libguile-gnutls-v-0.so.0 && ln -s 
libguile-gnutls-v-0.so.0.0.0 libguile-gnutls-v-0.so.0)
(cd .libs && rm -f libguile-gnutls-v-0.so && ln -s libguile-gnutls-v-0.so.0.0.0 
libguile-gnutls-v-0.so)
rm -fr .libs/libguile-gnutls-v-0.lax
mkdir .libs/libguile-gnutls-v-0.lax
rm -fr .libs/libguile-gnutls-v-0.lax/liblgnu.a
mkdir .libs/libguile-gnutls-v-0.lax/liblgnu.a
(cd .libs/libguile-gnutls-v-0.lax/liblgnu.a && ar x 
/home/jas/src/gnutls/guile/src/../../lgl/.libs/liblgnu.a)
ar cru .libs/libguile-gnutls-v-0.a  libguile_gnutls_v_0_la-core.o 
libguile_gnutls_v_0_la-errors.o libguile_gnutls_v_0_la-utils.o  
.libs/libguile-gnutls-v-0.lax/liblgnu.a/asnprintf.o 
.libs/libguile-gnutls-v-0.lax/liblgnu.a/printf-args.o 
.libs/libguile-gnutls-v-0.lax/liblgnu.a/gc-libgcrypt.o 
.libs/libguile-gnutls-v-0.lax/liblgnu.a/dummy.o 
.libs/libguile-gnutls-v-0.lax/liblgnu.a/read-file.o 
.libs/libguile-gnutls-v-0.lax/liblgnu.a/vasnprintf.o 
.libs/libguile-gnutls-v-0.lax/liblgnu.a/gc-pbkdf2-sha1.o 
.libs/libguile-gnutls-v-0.lax/liblgnu.a/md2.o 
.libs/libguile-gnutls-v-0.lax/liblgnu.a/printf-parse.o
ranlib .libs/libguile-gnutls-v-0.a
rm -fr .libs/libguile-gnutls-v-0.lax
creating libguile-gnutls-v-0.la
(cd .libs && rm -f libguile-gnutls-v-0.la && ln -s ../libguile-gnutls-v-0.la 
libguile-gnutls-v-0.la)
/bin/sh ../../libtool --tag=CC   --mode=link gcc -std=gnu99 -D_REENTRANT 
-D_THREAD_SAFE -g -Wall -Wcast-align -W -Wpointer-arith -Wchar-subscripts 
-Wformat-security -Wno-format-y2k -Wmissing-braces -Winline -Wstrict-prototypes 
-Wno-unused-parameter -pipe -I/usr/local/include  -I/usr/local/include 
-Wno-strict-prototypes -I../../lgl -I../../lgl  -D_REENTRANT -D_THREAD_SAFE 
-Wno-pointer-sign -lguile -lltdl  -lgmp -lcrypt -lm -lltdl  -o 
libguile-gnutls-extra-v-0.la -rpath /usr/local/lib 
libguile_gnutls_extra_v_0_la-extra.lo ../../lib/libgnutls.la 
../../libextra/libgnutls-extra.la ./libguile-gnutls-v-0.la ../../lgl/liblgnu.la
rm -fr  .libs/libguile-gnutls-extra-v-0.a .libs/libguile-gnutls-extra-v-0.la 
.libs/libguile-gnutls-extra-v-0.lai .libs/libguile-gnutls-extra-v-0.so 
.libs/libguile-gnutls-extra-v-0.so.0 .libs/libguile-gnutls-extra-v-0.so.0.0.0
gcc -std=gnu99 -shared  .libs/libguile_gnutls_extra_v_0_la-extra.o 
-Wl,--whole-archive ../../lgl/.libs/liblgnu.a -Wl,--no-whole-archive  
-Wl,--rpath -Wl,/home/jas/src/gnutls/lib/.libs -Wl,--rpath 
-Wl,/home/jas/src/gnutls/libextra/.libs -Wl,--rpath 
-Wl,/home/jas/src/gnutls/guile/src/.libs -Wl,--rpath -Wl,/usr/local/lib 
-Wl,--rpath -Wl,/usr/local/lib /usr/lib/libguile.so /usr/lib/libgmp.so -lcrypt 
-lm /usr/lib/libltdl.so ../../lib/.libs/libgnutls.so 
../../libextra/.libs/libgnutls-extra.so ./.libs/libguile-gnutls-v-0.so 
-L/usr/local/lib /usr/local/lib/libgcrypt.so -lnsl 
/usr/local/lib/libgpg-error.so  -Wl,-soname -Wl,libguile-gnutls-extra-v-0.so.0 
-o .libs/libguile-gnutls-extra-v-0.so.0.0.0
(cd .libs && rm -f libguile-gnutls-extra-v-0.so.0 && ln -s 
libguile-gnutls-extra-v-0.so.0.0.0 libguile-gnutls-extra-v-0.so.0)
(cd .libs && rm -f libguile-gnutls-extra-v-0.so && ln -s 
libguile-gnutls-extra-v-0.so.0.0.0 libguile-gnutls-extra-v-0.so)
rm -fr .libs/libguile-gnutls-extra-v-0.lax
mkdir .libs/libguile-gnutls-extra-v-0.lax
rm -fr .libs/libguile-gnutls-extra-v-0.lax/liblgnu.a
mkdir .libs/libguile-gnutls-extra-v-0.lax/liblgnu.a
(cd .libs/libguile-gnutls-extra-v-0.lax/liblgnu.a && ar x 
/home/jas/src/gnutls/guile/src/../../lgl/.libs/liblgnu.a)
ar cru .libs/libguile-gnutls-extra-v-0.a  libguile_gnutls_extra_v_0_la-extra.o  
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/asnprintf.o 
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/printf-args.o 
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/gc-libgcrypt.o 
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/dummy.o 
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/read-file.o 
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/vasnprintf.o 
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/gc-pbkdf2-sha1.o 
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/md2.o 
.libs/libguile-gnutls-extra-v-0.lax/liblgnu.a/printf-parse.o
ranlib .libs/libguile-gnutls-extra-v-0.a
rm -fr .libs/libguile-gnutls-extra-v-0.lax
creating libguile-gnutls-extra-v-0.la
(cd .libs && rm -f libguile-gnutls-extra-v-0.la && ln -s 
../libguile-gnutls-extra-v-0.la libguile-gnutls-extra-v-0.la)
make[1]: Leaving directory `/home/jas/src/gnutls/guile/src'
address@hidden:~/src/gnutls/guile/src$

>> Still, libtool manual recommends to use LIBADD for library dependencies,
>> so if that doesn't work, we should report it as a bug.
>
> It's not that it doesn't work, just that the relative order of
> `_LDFLAGS' and `_LIBADD' is not specified.

I don't think that should matter -- libtool should make sure *.la's are
linked properly.  If it has to re-order -rpath's to do that properly if
the order isn't specified, then libtool has to do that.

>> Btw, which libtool version are you using?  I think libtool is the one
>> tool that doesn't have version-checks in configure.in.
>
> I'm using Debian's package, version 1.5.22-4.

Same here.  Curious.

Btw, do your /etc/ld.so.conf contain /usr/local/lib?

/Simon



reply via email to

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