odd build failure on trunk, i686-pc-linux-gnu

Phil Edwards pedwards@disaster.jaj.com
Fri Jun 1 15:02:00 GMT 2001


Holy cow, I don't understand this one at /all/.  When calling xgcc to create
the shared libstdc++, collect2 is trying to grab both /usr/lib/crti.o and
crtbegin.S more than once, producing the following amusing and discouraging
errors (expanded via -v).  It's using current CVS gcc unified with current
CVS binutils.

What causes these files to be multiply listed, i.e., where do I look?


 /home/pme/build/B/gcc/collect2 -m elf_i386 -shared -o .libs/libstdc++.so.3.0.0 /usr/lib/crti.o /home/pme/build/B/gcc/crtbeginS.o -L/home/pme/build/B/i686-pc-linux-gnu/libstdc++-v3/src -L/home/pme/build/B/i686-pc-linux-gnu/libstdc++-v3/src/.libs -L/home/pme/build/B/ld -L/home/pme/build/B/i686-pc-linux-gnu/libstdc++-v3/src -L/home/pme/build/B/i686-pc-linux-gnu/libstdc++-v3/src/.libs -L/home/pme/build/B/ld -L/home/pme/build/B/gcc -L/home/pme/build/install-2001-06-01/i686-pc-linux-gnu/bin -L/home/pme/build/install-2001-06-01/i686-pc-linux-gnu/lib -L/home/pme/build/install-2001-06-01/lib/gcc-lib/i686-pc-linux-gnu/3.1 -L/home/pme/build/install-2001-06-01/lib/gcc-lib/i686-pc-linux-gnu/3.1/../../../../i686-pc-linux-gnu/lib -L/home/pme/build/install-2001-06-01/lib/gcc-lib/i686-pc-linux-gnu/3.1/../../.. -L/home/pme/build/B/gcc -L/home/pme/build/install-2001-06-01/i686-pc-linux-gnu/bin -L/home/pme/build/install-2001-06-01/i686-pc-linux-gnu/lib -L/home/pme/build/install-2001-06-01/lib/gcc-lib/i686-pc-linux-gnu/3.1 -L/home/pme/build/install-2001-06-01/lib/gcc-lib/i686-pc-linux-gnu/3.1/../../../../i686-pc-linux-gnu/lib -L/home/pme/build/install-2001-06-01/lib/gcc-lib/i686-pc-linux-gnu/3.1/../../.. /usr/lib/crti.o /home/pme/build/B/gcc/crtbeginS.o .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/wstring-inst.o .libs/libstdc++.lax/libmath.a/signbit.o .libs/libstdc++.lax/libmath.a/signbitf.o .libs/libstdc++.lax/libmath.a/signbitl.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/eh_alloc.o .libs/libstdc++.lax/libsupc++convenience.a/eh_aux_runtime.o .libs/libstdc++.lax/libsupc++convenience.a/eh_catch.o .libs/libstdc++.lax/libsupc++convenience.a/eh_exception.o .libs/libstdc++.lax/libsupc++convenience.a/eh_globals.o .libs/libstdc++.lax/libsupc++convenience.a/eh_personality.o .libs/libstdc++.lax/libsupc++convenience.a/eh_terminate.o .libs/libstdc++.lax/libsupc++convenience.a/eh_throw.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 -lm ../libmath/.libs/libmath.a -lm ../libsupc++/.libs/libsupc++convenience.a -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /home/pme/build/B/gcc/crtendS.o /usr/lib/crtn.o -lgcc_s -lgcc -lc -lgcc_s -lgcc /home/pme/build/B/gcc/crtendS.o /usr/lib/crtn.o
/usr/lib/crti.o: In function `_init':
/usr/lib/crti.o(.init+0x0): multiple definition of `_init'
/usr/lib/crti.o(.init+0x0): first defined here
/usr/lib/crti.o: In function `_fini':
/usr/lib/crti.o(.fini+0x0): multiple definition of `_fini'
/usr/lib/crti.o(.fini+0x0): first defined here
/home/pme/build/B/gcc/crtbeginS.o(.data+0x0): multiple definition of `__dso_handle'
/home/pme/build/B/gcc/crtbeginS.o(.data+0x0): first defined here
collect2: ld returned 1 exit status




More information about the Gcc-bugs mailing list