This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
libtool adds multiple `-lg' options linking [v3] testsuite
- To: gcc-bugs at gcc dot gnu dot org
- Subject: libtool adds multiple `-lg' options linking [v3] testsuite
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Date: Thu, 26 Apr 2001 13:01:45 -0400 (EDT)
The following error occurs in the mkchecklog.txt:
/xxx/gnu/gcc-3.0/objdir/vax-dec-ultrix4.3/libstdc++-v3/../../gcc/g++ -B/xxx/gnu/
gcc-3.0/objdir/vax-dec-ultrix4.3/libstdc++-v3/../../gcc/ -ggdb3 -DDEBUG_ASSERT -nostdinc++ -I/xxx/gnu/gcc-3.0/objdir/vax-dec-ultrix4.3/libstdc++-v3/include -I/xxx/gnu/gcc-3.0/libstdc++-v3/include/std -I/xxx/gnu/gcc-3.0/libstdc++-v3/include/c_std -I/xxx/gnu/gcc-3.0/libstdc++-v3/include -I/xxx/gnu/gcc-3.0/libstdc++-v3/libsupc++ -I/xxx/gnu/gcc-3.0/libstdc++-v3/libio -I/xxx/gnu/gcc-3.0/libstdc++-v3/testsuite -nodefaultlibs /xxx/gnu/gcc-3.0/libstdc++-v3/testsuite/25_algorithms/lower_bound.cc -o ./lower_bound.st-exe /xxx/gnu/gcc-3.0/objdir/vax-dec-ultrix4.3/libstdc++-v3/src/../libsupc++/.libs/libsupc++.a -L/xxx/gnu/gcc-3.0/objdir/vax-dec-ultrix4.3/libstdc++-v3/src -L/xxx/gnu/gcc-3.0/objdir/vax-dec-ultrix4.3/libstdc++-v3/src/.libs -lm -L/xxx/gnu/gcc-3.0/objdir/gcc -L/usr/local/vax-dec-ultrix4.3/bin -L/usr/local/vax-dec-ultrix4.3/lib -L/usr/local/lib/gcc-lib/vax-dec-ultrix4.3/3.0 -L/usr/local/lib/gcc-lib/vax-dec-ultrix4.3/3.0/../../../../vax-dec-ultrix4.3/lib -L/usr/local/lib/gcc-lib!
/vax-dec-ultrix4.3/3.0/../../.. -lgcc -lg -lc -lgcc /xxx/gnu/gcc-3.0/objdir/vax-dec-ultrix4.3/libstdc++-v3/src/.libs/libstdc++.a -lm -lm -lm -lgcc -lg -lc -lgcc -lm -lgcc -lg -lc -lgcc -lc -lgcc -lc -Wl,--rpath -Wl,/xxx/gnu/gcc-3.0/objdir/vax-dec-ultrix4.3/libstdc++-v3/../../gcc
/lib/libg.a(.text+0x0): multiple definition of `_dbsubc'
/lib/libg.a(.text+0x0): first defined here
/lib/libg.a(.text+0xb): multiple definition of `_dbsubn'
/lib/libg.a(.text+0xb): first defined here
/lib/libg.a(.text+0x0): multiple definition of `_dbsubc'
/lib/libg.a(.text+0x0): first defined here
/lib/libg.a(.text+0xb): multiple definition of `_dbsubn'
/lib/libg.a(.text+0xb): first defined here
collect2: ld returned 1 exit status
As it happens, libg.a is not an archive but an object disguised as a library.
Thus, -lg can't be included multiple times in the link command. I see
`postdeps="-lgcc -lg -lc -lgcc"' in libtool, so I suspect that libtool was used
to build the above command.
The library libg.a is only linked in when `-g' is used. Could libtool
be modified to only add -lg when -g is specified, and only do it once?
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)