[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[libtool 2.2] testsuite: 55 failed with as-needed
From: |
Alexis Ballier |
Subject: |
[libtool 2.2] testsuite: 55 failed with as-needed |
Date: |
Sat, 8 Mar 2008 14:50:09 +0100 |
Hi,
Perhaps it's the desired behavior, but I get a failure on test 55 when
using -Wl,--as-needed in LDFLAGS (and its ok if I remove it).
From my poor understanding of template.at, the test is run for the case
when libb does not depend on liba and when linking the main program
against both libb and liba, liba gets dropped but libb needs it, thus
the linking failure. Anyway, I thought it was worth reporting it.
(log below)
Regards,
Alexis.
# -*- compilation -*-
55. template.at:126: testing ...
./template.at:127: { test -n "$CXX" && test "X$CXX" != Xno; } || (exit 77)
./template.at:127: test "X$CXX" != Xg++ || (g++ -v >/dev/null 2>&1) || (exit 77)
./template.at:220: $CXX $CPPFLAGS $CXXFLAGS -c -o $main_o ../src/sub/main.cpp
stderr:
stdout:
./template.at:230: $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS
-c -o lib/a.lo ../src/lib/a.cpp
stderr:
stdout:
libtool: compile: x86_64-pc-linux-gnu-g++ -I../src/lib -I../src/lib2
-march=athlon64 -O2 -pipe -g -ggdb -c ../src/lib/a.cpp -fPIC -DPIC -o
lib/.libs/a.o
libtool: compile: x86_64-pc-linux-gnu-g++ -I../src/lib -I../src/lib2
-march=athlon64 -O2 -pipe -g -ggdb -c ../src/lib/a.cpp -o lib/a.o >/dev/null
2>&1
./template.at:232: $LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS
-c -o lib2/b.lo ../src/lib2/b.cpp
stderr:
stdout:
libtool: compile: x86_64-pc-linux-gnu-g++ -I../src/lib -I../src/lib2
-march=athlon64 -O2 -pipe -g -ggdb -c ../src/lib2/b.cpp -fPIC -DPIC -o
lib2/.libs/b.o
libtool: compile: x86_64-pc-linux-gnu-g++ -I../src/lib -I../src/lib2
-march=athlon64 -O2 -pipe -g -ggdb -c ../src/lib2/b.cpp -o lib2/b.o >/dev/null
2>&1
./template.at:234: $CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp
stderr:
stdout:
./template.at:237: $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o
lib/liba.la lib/a.lo
stderr:
stdout:
libtool: link: x86_64-pc-linux-gnu-ar cru lib/.libs/liba.a lib/.libs/a.o
libtool: link: x86_64-pc-linux-gnu-ranlib lib/.libs/liba.a
libtool: link: ( cd "lib/.libs" && rm -f "liba.la" && ln -s "../liba.la"
"liba.la" )
./template.at:239: $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o
lib2/libb.la lib2/b.lo
stderr:
stdout:
libtool: link: x86_64-pc-linux-gnu-ar cru lib2/.libs/libb.a lib2/.libs/b.o
libtool: link: x86_64-pc-linux-gnu-ranlib lib2/.libs/libb.a
libtool: link: ( cd "lib2/.libs" && rm -f "libb.la" && ln -s "../libb.la"
"libb.la" )
./template.at:241: $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o
sub/main $main_o lib2/libb.la lib/liba.la
stderr:
stdout:
libtool: link: x86_64-pc-linux-gnu-g++ -march=athlon64 -O2 -pipe -g -ggdb
-Wl,--as-needed -o sub/main sub/main.o lib2/.libs/libb.a lib/.libs/liba.a
./template.at:243: ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
elif test "X$host" != "X$build" && \
{ test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
then (exit 77); else (exit $lt_status); fi
./template.at:246: $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o
lib2/libb.la lib2/b.lo -rpath /foo
stderr:
stdout:
libtool: link: rm -fr lib2/.libs/libb.a lib2/.libs/libb.la
libtool: link: x86_64-pc-linux-gnu-g++ -shared -nostdlib
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64/crti.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/crtbeginS.o lib2/.libs/b.o
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64 -L/lib/../lib64
-L/usr/lib/../lib64
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../x86_64-pc-linux-gnu/lib
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../.. -lstdc++ -lm -lc -lgcc_s
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/crtendS.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64/crtn.o
-march=athlon64 -Wl,--as-needed -Wl,-soname -Wl,libb.so.0 -o
lib2/.libs/libb.so.0.0.0
libtool: link: (cd "lib2/.libs" && rm -f "libb.so.0" && ln -s "libb.so.0.0.0"
"libb.so.0")
libtool: link: (cd "lib2/.libs" && rm -f "libb.so" && ln -s "libb.so.0.0.0"
"libb.so")
libtool: link: x86_64-pc-linux-gnu-ar cru lib2/.libs/libb.a lib2/b.o
libtool: link: x86_64-pc-linux-gnu-ranlib lib2/.libs/libb.a
libtool: link: ( cd "lib2/.libs" && rm -f "libb.la" && ln -s "../libb.la"
"libb.la" )
./template.at:248: $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o
sub/main $main_o lib2/libb.la lib/liba.la
stderr:
stdout:
libtool: link: x86_64-pc-linux-gnu-g++ -march=athlon64 -O2 -pipe -g -ggdb
-Wl,--as-needed -o sub/.libs/main sub/main.o lib2/.libs/libb.so
lib/.libs/liba.a -Wl,-rpath -Wl,/foo
./template.at:250: ./sub/main; lt_status=$?; if test $lt_status -eq 0; then :;
elif test "X$host" != "X$build" && \
{ test -x "./sub/main" || test -x "./sub/main"$EXEEXT; }
then (exit 77); else (exit $lt_status); fi
./template.at:254: $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o
lib/liba.la lib/a.lo -rpath /foo
stderr:
stdout:
libtool: link: rm -fr lib/.libs/liba.a lib/.libs/liba.la
libtool: link: x86_64-pc-linux-gnu-g++ -shared -nostdlib
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64/crti.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/crtbeginS.o lib/.libs/a.o
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64 -L/lib/../lib64
-L/usr/lib/../lib64
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../x86_64-pc-linux-gnu/lib
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../.. -lstdc++ -lm -lc -lgcc_s
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/crtendS.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64/crtn.o
-march=athlon64 -Wl,--as-needed -Wl,-soname -Wl,liba.so.0 -o
lib/.libs/liba.so.0.0.0
libtool: link: (cd "lib/.libs" && rm -f "liba.so.0" && ln -s "liba.so.0.0.0"
"liba.so.0")
libtool: link: (cd "lib/.libs" && rm -f "liba.so" && ln -s "liba.so.0.0.0"
"liba.so")
libtool: link: x86_64-pc-linux-gnu-ar cru lib/.libs/liba.a lib/a.o
libtool: link: x86_64-pc-linux-gnu-ranlib lib/.libs/liba.a
libtool: link: ( cd "lib/.libs" && rm -f "liba.la" && ln -s "../liba.la"
"liba.la" )
./template.at:256: $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o
lib2/libb.la lib2/b.lo -rpath /bar
stderr:
stdout:
libtool: link: rm -fr lib2/.libs/libb.a lib2/.libs/libb.la lib2/.libs/libb.lai
lib2/.libs/libb.so lib2/.libs/libb.so.0 lib2/.libs/libb.so.0.0.0
libtool: link: x86_64-pc-linux-gnu-g++ -shared -nostdlib
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64/crti.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/crtbeginS.o lib2/.libs/b.o
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64 -L/lib/../lib64
-L/usr/lib/../lib64
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../x86_64-pc-linux-gnu/lib
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../.. -lstdc++ -lm -lc -lgcc_s
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/crtendS.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64/crtn.o
-march=athlon64 -Wl,--as-needed -Wl,-soname -Wl,libb.so.0 -o
lib2/.libs/libb.so.0.0.0
libtool: link: (cd "lib2/.libs" && rm -f "libb.so.0" && ln -s "libb.so.0.0.0"
"libb.so.0")
libtool: link: (cd "lib2/.libs" && rm -f "libb.so" && ln -s "libb.so.0.0.0"
"libb.so")
libtool: link: x86_64-pc-linux-gnu-ar cru lib2/.libs/libb.a lib2/b.o
libtool: link: x86_64-pc-linux-gnu-ranlib lib2/.libs/libb.a
libtool: link: ( cd "lib2/.libs" && rm -f "libb.la" && ln -s "../libb.la"
"libb.la" )
./template.at:258: $LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o
sub/main $main_o lib2/libb.la lib/liba.la
stderr:
lib2/.libs/libb.so: undefined reference to `a2(char)'
collect2: ld returned 1 exit status
stdout:
libtool: link: x86_64-pc-linux-gnu-g++ -march=athlon64 -O2 -pipe -g -ggdb
-Wl,--as-needed -o sub/.libs/main sub/main.o lib2/.libs/libb.so
lib/.libs/liba.so -Wl,-rpath -Wl,/bar -Wl,-rpath -Wl,/foo
./template.at:258: exit code was 1, expected 0
55. template.at:126: 55. template test with subdirs (template.at:126): FAILED
(template.at:258)
signature.asc
Description: PGP signature
- [libtool 2.2] testsuite: 55 failed with as-needed,
Alexis Ballier <=