ld: Duplicate symbols are not allowed in shared libraries

John David Anglin dave@hiauly1.hia.nrc.ca
Tue Mar 27 19:48:00 GMT 2001


The following build error occurs with todays cvs source for the gcc 3.0
branch:

ld -b +h libstdc++.sl.3 +b /usr/local/lib -o .libs/libstdc++.sl.3.0  .libs/limitsMEMBERS.o .libs/stdexcept.o .libs/functexcept.o .libs/bitset.o .libs/globals.o .libs/basic_file.o .libs/ios.o .libs/complex_io.o .libs/strstream.o .libs/c++locale.o .libs/locale.o .libs/localename.o .libs/codecvt.o .libs/locale-inst.o .libs/stl-inst.o .libs/misc-inst.o .libs/valarray-inst.o .libs/string-inst.o .libs/libstdc++.lax/libmath.a/signbit.o .libs/libstdc++.lax/libmath.a/signbitf.o .libs/libstdc++.lax/libmath.a/nan.o .libs/libstdc++.lax/libmath.a/hypotf.o  .libs/libstdc++.lax/libsupc++convenience.a/del_op.o .libs/libstdc++.lax/libsupc++convenience.a/del_opnt.o .libs/libstdc++.lax/libsupc++convenience.a/del_opv.o .libs/libstdc++.lax/libsupc++convenience.a/del_opvnt.o .libs/libstdc++.lax/libsupc++convenience.a/exception_support.o .libs/libstdc++.lax/libsupc++convenience.a/new_handler.o .libs/libstdc++.lax/libsupc++convenience.a/new_op.o .libs/libstdc++.lax/libsupc++convenience.a/new_opnt.o .!
libs/libstdc++.lax/libsupc++convenience.a/new_opv.o .libs/libstdc++.lax/libsupc++convenience.a/new_opvnt.o .libs/libstdc++.lax/libsupc++convenience.a/pure.o .libs/libstdc++.lax/libsupc++convenience.a/tinfo.o .libs/libstdc++.lax/libsupc++convenience.a/tinfo2.o .libs/libstdc++.lax/libsupc++convenience.a/vec.o   ../libmath/.libs/libmath.a ../libsupc++/.libs/libsupc++convenience.a 
ld: Duplicate symbol "_ZNSaIcED1Ev" in files .libs/complex_io.o and .libs/c++locale.o
ld: Duplicate symbol "_ZNSaIcED1Ev" in files .libs/complex_io.o and .libs/locale-inst.o
ld: Duplicate symbol "_ZNSaIcEC2ERKS_" in files .libs/complex_io.o and .libs/locale-inst.o
ld: Duplicate symbol "_ZNSaIcEC1Ev" in files .libs/complex_io.o and .libs/locale-inst.o
ld: Duplicate symbol "_ZNSaIcED1Ev" in files .libs/complex_io.o and .libs/misc-inst.o
ld: Duplicate symbol "_ZNSsD1Ev" in files .libs/complex_io.o and .libs/string-inst.o
ld: Duplicate symbols are not allowed in shared libraries
make[4]: *** [libstdc++.la] Error 1
make[4]: Leaving directory `/xxx/gnu/gcc-3.0/objdir/hppa1.1-hp-hpux10.20/libstdc++-v3/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/xxx/gnu/gcc-3.0/objdir/hppa1.1-hp-hpux10.20/libstdc++-v3'
make[2]: *** [all-recursive-am] Error 2
make[2]: Leaving directory `/xxx/gnu/gcc-3.0/objdir/hppa1.1-hp-hpux10.20/libstdc++-v3'
make[1]: *** [all-target-libstdc++-v3] Error 2
make[1]: Leaving directory `/xxx/gnu/gcc-3.0/objdir'
make: *** [bootstrap-lean] Error 2

Gcc was configured as follows:

../configure --host=hppa1.1-hp-hpux10.20 --with-gnu-as --enable-shared

Dave
-- 
J. David Anglin                                  dave.anglin@nrc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)



More information about the Gcc-bugs mailing list