This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

libtool adds multiple `-lg' options linking [v3] testsuite


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)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]