Issue Details (XML | Word | Printable)

Key: STDCXX-388
Type: Bug Bug
Status: Open Open
Priority: Minor Minor
Assignee: Martin Sebor
Reporter: Martin Sebor
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
C++ Standard Library

[gcc 3.4.4/FreeBSD 6.1/IA64] many errors for runtime symbols linking with stdcxx

Created: 08/Apr/07 01:31 AM   Updated: 18/Mar/08 06:09 PM
Return to search
Component/s: Build and Installation
Affects Version/s: 4.2.0
Fix Version/s: None

Time Tracking:
Original Estimate: 16h
Original Estimate - 16h
Remaining Estimate: 16h
Remaining Estimate - 16h
Time Spent: Not Specified
Remaining Estimate - 16h

Environment: gcc 3.4.4/FreeBSD 6.1/IA64
Issue Links:
Reference
 

Severity: Linker Error


 Description  « Hide
All examples (or other programs) fail to link on FreeBSD with errors like the ones below:

$ nice gmake accumulate
gcc accumulate.o -o accumulate -L/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib -lstd11s -lsupc++ -lm
/usr/lib/libsupc++.a(new_handler.o)(.text._ZNSt9bad_allocD1Ev+0x0): In function `std::bad_alloc::~bad_alloc()':
: multiple definition of `std::bad_alloc::~bad_alloc()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(memory.o)(.text+0x6d0):/house/sebor/stdcxx-2007-03-30-r524321/src/memory.cpp:301: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt9bad_allocD1Ev' changed from 192 in /usr/lib/libsupc+.a(new_handler.o) to 96 in /usr/lib/libsupc+.a(new_handler.o)
/usr/lib/libsupc++.a(new_handler.o)(.text._ZNSt9bad_allocD0Ev+0x0): In function `std::bad_alloc::~bad_alloc()':
: multiple definition of `std::bad_alloc::~bad_alloc()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(memory.o)(.text+0x790):/house/sebor/stdcxx-2007-03-30-r524321/src/memory.cpp:301: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt9bad_allocD0Ev' changed from 192 in /usr/lib/libsupc+.a(new_handler.o) to 112 in /usr/lib/libsupc+.a(new_handler.o)
/usr/lib/libsupc++.a(new_handler.o)(.text._ZNSt9bad_allocD2Ev+0x0): In function `std::bad_alloc::~bad_alloc()':
: multiple definition of `std::bad_alloc::~bad_alloc()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(memory.o)(.text+0x610):/house/sebor/stdcxx-2007-03-30-r524321/src/memory.cpp:301: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt9bad_allocD2Ev' changed from 192 in /usr/lib/libsupc+.a(new_handler.o) to 96 in /usr/lib/libsupc+.a(new_handler.o)
/usr/lib/libsupc++.a(eh_exception.o)(.text._ZNSt9exceptionD1Ev+0x0): In function `std::exception::~exception()':
: multiple definition of `std::exception::~exception()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(exception.o)(.text+0x210):/house/sebor/stdcxx-2007-03-30-r524321/src/exception.cpp:323: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt9exceptionD1Ev' changed from 176 in /usr/lib/libsupc+.a(eh_exception.o) to 48 in /usr/lib/libsupc+.a(eh_exception.o)
/usr/lib/libsupc++.a(eh_exception.o)(.text._ZNSt9exceptionD0Ev+0x0): In function `std::exception::~exception()':
: multiple definition of `std::exception::~exception()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(exception.o)(.text+0x2c0):/house/sebor/stdcxx-2007-03-30-r524321/src/exception.cpp:323: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt9exceptionD0Ev' changed from 176 in /usr/lib/libsupc+.a(eh_exception.o) to 96 in /usr/lib/libsupc+.a(eh_exception.o)
/usr/lib/libsupc++.a(eh_exception.o)(.text._ZNSt13bad_exceptionD1Ev+0x0): In function `std::bad_exception::~bad_exception()':
: multiple definition of `std::bad_exception::~bad_exception()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(exception.o)(.text+0x6c0):/house/sebor/stdcxx-2007-03-30-r524321/src/exception.cpp:391: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt13bad_exceptionD1Ev' changed from 192 in /usr/lib/libsupc+.a(eh_exception.o) to 96 in /usr/lib/libsupc+.a(eh_exception.o)
/usr/lib/libsupc++.a(eh_exception.o)(.text._ZNSt13bad_exceptionD0Ev+0x0): In function `std::bad_exception::~bad_exception()':
: multiple definition of `std::bad_exception::~bad_exception()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(exception.o)(.text+0x780):/house/sebor/stdcxx-2007-03-30-r524321/src/exception.cpp:391: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt13bad_exceptionD0Ev' changed from 192 in /usr/lib/libsupc+.a(eh_exception.o) to 112 in /usr/lib/libsupc+.a(eh_exception.o)
/usr/lib/libsupc++.a(eh_exception.o)(.text._ZNSt9exceptionD2Ev+0x0): In function `std::exception::~exception()':
: multiple definition of `std::exception::~exception()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(exception.o)(.text+0x160):/house/sebor/stdcxx-2007-03-30-r524321/src/exception.cpp:323: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt9exceptionD2Ev' changed from 176 in /usr/lib/libsupc+.a(eh_exception.o) to 48 in /usr/lib/libsupc+.a(eh_exception.o)
/usr/lib/libsupc++.a(eh_exception.o)(.text._ZNSt13bad_exceptionD2Ev+0x0): In function `std::bad_exception::~bad_exception()':
: multiple definition of `std::bad_exception::~bad_exception()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(exception.o)(.text+0x600):/house/sebor/stdcxx-2007-03-30-r524321/src/exception.cpp:391: first defined here
/usr/bin/ld: Warning: size of symbol `_ZNSt13bad_exceptionD2Ev' changed from 192 in /usr/lib/libsupc+.a(eh_exception.o) to 96 in /usr/lib/libsupc+.a(eh_exception.o)
/usr/lib/libsupc++.a(eh_catch.o)(.text._ZSt18uncaught_exceptionv+0x0): In function `std::uncaught_exception()':
: multiple definition of `std::uncaught_exception()'
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(exception.o)(.text+0x0): first defined here
/usr/bin/ld: Warning: size of symbol `_ZSt18uncaught_exceptionv' changed from 96 in /usr/lib/libsupc+.a(eh_catch.o) to 80 in /usr/lib/libsupc+.a(eh_catch.o)
/house/sebor/build/stdcxx-2007-03-30-r524321-freebsd-6.1-ia64-gcc-3.4.4-11s/lib/libstd11s.a(exception.o)(.text+0x22): In function `std::uncaught_exception()':
/house/sebor/stdcxx-2007-03-30-r524321/src/exception.cpp:241: undefined reference to `uncaught_exception()'
/usr/lib/libsupc++.a(eh_throw.o)(.text._cxa_throw+0x21): In function `_cxa_throw':
: undefined reference to `_cxxabiv1::_unexpected_handler'
/usr/lib/libsupc++.a(eh_throw.o)(.text._cxa_throw+0x52): In function `_cxa_throw':
: undefined reference to `_cxxabiv1::_terminate_handler'
/usr/lib/libsupc++.a(eh_terminate.o)(.text._ZSt9terminatev+0x1): In function `std::terminate()':
: undefined reference to `_cxxabiv1::_terminate_handler'
/usr/lib/libsupc++.a(eh_terminate.o)(.text._ZSt10unexpectedv+0x1): In function `std::unexpected()':
: undefined reference to `_cxxabiv1::_unexpected_handler'
/usr/lib/libsupc++.a(eh_terminate.o)(.text._ZSt13set_terminatePFvvE+0x1): In function `std::set_terminate(void ())':
: undefined reference to `_cxxabiv1::_terminate_handler'
/usr/lib/libsupc++.a(eh_terminate.o)(.text._ZSt14set_unexpectedPFvvE+0x1): In function `std::set_unexpected(void ())':
: undefined reference to `_cxxabiv1::_unexpected_handler'
gmake: *** [accumulate] Error 1



 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Martin Sebor added a comment - 29/May/07 11:36 PM
Looks like this is specific to IA64. None of our FreeBSD/x86 builds are failing with these errors.

Martin Sebor added a comment - 23/Aug/07 10:46 PM
Lowered priority since this is probably not the most popular platform for stdcxx. Not sure if we'll be able to fix this or when as we don't have access to this particular platform anymore.

Martin Sebor added a comment - 28/Aug/07 11:06 PM
Scheduled for 4.2.1 on the assumption that we get access to the platform.

Martin Sebor added a comment - 18/Mar/08 06:09 PM
Deferred indefinitely until we get access to the affected platform or until we can reproduce it in some other environment.