bug-libtool
[Top][All Lists]
Advanced

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

Libtool 1.4.2 linking convenience archives


From: Christian Cornelssen
Subject: Libtool 1.4.2 linking convenience archives
Date: Mon, 26 Nov 2001 02:28:35 +0100 (CET)

Dear Libtool maintainers,

here are some observed oddities, maybe they aren't actually intended.
Maybe they produce garbage.  Maybe they are just the right thing to do
when assuming some nasty setup that I cannot imagine.

   (1)  Within --mode=link, libtool does not pass compiler flags to
the linker command (gcc) except for its own ones.  In my case, the
out-filtered flags actually were irrelevant for the linker (code
optimization and other compiler options), but would libtool leave
relevant flags in?

   (2)  When linking (with gcc using GNU ld) a shared library from a
bunch of convenience libraries (and nothing else), libtool lists the
convenience libraries twice: Once after `-Wl,--whole-archive', then
again after `-Wl,--no-whole-archive'.  Does that make sense?

   For greater clarity, here is the relevant extract from my "make"
output (with lines re-wrapped):

==> the command issued by "make" <==
/bin/sh ../libtool --mode=link \
gcc -m486 -O3 -fstrict-aliasing -finline-limit-500 -Wall -Wno-unused \
-o libLiDIA.la -rpath /usr/lib -version-info 0:0:0 \
../library/base/libLiDIA-base.la \
../library/finite_fields/libLiDIA-FF.la \
../library/linear_algebra/libLiDIA-LA.la \
../library/lattices/libLiDIA-LT.la \
../library/number_fields/libLiDIA-NF.la \
../library/elliptic_curves/libLiDIA-EC.la \
../library/ec_order/libLiDIA-ECO.la -lgmp

==> libtool's output <==
mkdir .libs
rm -fr .libs/libLiDIA.la .libs/libLiDIA.* .libs/libLiDIA.*
gcc -shared  -Wl,--whole-archive \
../library/base/.libs/libLiDIA-base.al \
../library/finite_fields/.libs/libLiDIA-FF.al \
../library/linear_algebra/.libs/libLiDIA-LA.al \
../library/lattices/.libs/libLiDIA-LT.al \
../library/number_fields/.libs/libLiDIA-NF.al \
../library/elliptic_curves/.libs/libLiDIA-EC.al \
../library/ec_order/.libs/libLiDIA-ECO.al \
-Wl,--no-whole-archive \
../library/base/.libs/libLiDIA-base.al \
../library/finite_fields/.libs/libLiDIA-FF.al \
../library/linear_algebra/.libs/libLiDIA-LA.al \
../library/lattices/.libs/libLiDIA-LT.al \
../library/number_fields/.libs/libLiDIA-NF.al \
../library/elliptic_curves/.libs/libLiDIA-EC.al \
../library/ec_order/.libs/libLiDIA-ECO.al \
-lm /usr/lib/libgmp.so \
-Wl,-soname -Wl,libLiDIA.so.0 \
-o .libs/libLiDIA.so.0.0.0
...

   Sincerely,

Christian Cornelssen




reply via email to

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