build and usage on solaris 8
Bruno.Voigt@ic3s.de
Bruno.Voigt@ic3s.de
Mon Apr 3 15:09:00 GMT 2000
okay,
i tried to compile
#include <iostream>
#include <sstream>
using namespace std;
int main(void)
{
ostringstream t;
t << "Hello, world";
cout << t.str() << endl;
}
with g++ -fhonor-std test.cpp
or g++ -fhnor-std -L/usr/local/lib/libstdc++.a test.cpp
it gave me:
/var/tmp/ccduQmv4.o: In function `main':
/var/tmp/ccduQmv4.o(.text+0x178): undefined reference to `std::basic_ostream<char, std::char_traits<char> > & std::operator<<<std::char_traits<char>
>(std::basic_ostream<char, std::char_traits<char> > &, char const *)'
/var/tmp/ccduQmv4.o(.text+0x19c): undefined reference to `std::cout'
/var/tmp/ccduQmv4.o(.text+0x1a0): undefined reference to `std::cout'
/var/tmp/ccduQmv4.o(.text+0x1a4): undefined reference to `std::basic_ostream<char, std::char_traits<char> > & std::operator<<<char,
std::char_traits<char>, std::allocator<char> >(std::basic_ostream<char, std::char_traits<char> > &, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const &)'
/var/tmp/ccduQmv4.o(.text+0x1bc): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char,
std::char_traits<char> > &(*)(std::basic_ostream<char, std::char_traits<char> > &))'
/var/tmp/ccduQmv4.o(.text+0x268): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `__static_initialization_and_destruction_0':
/var/tmp/ccduQmv4.o(.text+0x2b4): undefined reference to `std::ios_base::Init::Init(void)'
/var/tmp/ccduQmv4.o(.text+0x2d0): undefined reference to `std::ios_base::Init::~Init(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const
&)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::gnu.linkonce.t._M_destroy(std::allocator<char>
const &)+0x104): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::bad_alloc::bad_alloc(void)':
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(void)+0xc): undefined reference to `std::exception::exception(void)'
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(void)+0x14): undefined reference to `std::bad_alloc virtual table'
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(void)+0x18): undefined reference to `std::bad_alloc virtual table'
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(void)+0x4c): undefined reference to `std::exception::~exception(void)'
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(void)+0x6c): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::exception::exception(std::exception const &)':
/var/tmp/ccduQmv4.o(.std::exception::gnu.linkonce.t.(std::exception const &)+0xc): undefined reference to `std::exception virtual table'
/var/tmp/ccduQmv4.o(.std::exception::gnu.linkonce.t.(std::exception const &)+0x10): undefined reference to `std::exception virtual table'
/var/tmp/ccduQmv4.o: In function `std::bad_alloc::bad_alloc(std::bad_alloc const &)':
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(std::bad_alloc const &)+0x1c): undefined reference to `std::bad_alloc virtual table'
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(std::bad_alloc const &)+0x20): undefined reference to `std::bad_alloc virtual table'
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(std::bad_alloc const &)+0x54): undefined reference to `std::exception::~exception(void)'
/var/tmp/ccduQmv4.o(.std::bad_alloc::gnu.linkonce.t.(std::bad_alloc const &)+0x74): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::__malloc_alloc_template<0>::_S_oom_malloc(unsigned int)':
/var/tmp/ccduQmv4.o(.std::__malloc_alloc_template<0>::gnu.linkonce.t._S_oom_malloc(unsigned int)+0x88): undefined reference to `std::bad_alloc::
~bad_alloc(void)'
/var/tmp/ccduQmv4.o(.std::__malloc_alloc_template<0>::gnu.linkonce.t._S_oom_malloc(unsigned int)+0xa8): undefined reference to `std::bad_alloc::
~bad_alloc(void)'
/var/tmp/ccduQmv4.o(.std::__malloc_alloc_template<0>::gnu.linkonce.t._S_oom_malloc(unsigned int)+0xac): undefined reference to `std::bad_alloc::
~bad_alloc(void)'
/var/tmp/ccduQmv4.o(.std::__malloc_alloc_template<0>::gnu.linkonce.t._S_oom_malloc(unsigned int)+0x110): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o(.std::__malloc_alloc_template<0>::gnu.linkonce.t._S_oom_malloc(unsigned int)+0x124): undefined reference to `std::bad_alloc::
~bad_alloc(void)'
/var/tmp/ccduQmv4.o(.std::__malloc_alloc_template<0>::gnu.linkonce.t._S_oom_malloc(unsigned int)+0x144): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_create(unsigned int,
std::allocator<char> const &)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::gnu.linkonce.t._S_create(unsigned int,
std::allocator<char> const &)+0x30): undefined reference to `std::__length_error(char const *)'
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::gnu.linkonce.t._S_create(unsigned int,
std::allocator<char> const &)+0x120): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_clone(std::allocator<char> const &,
unsigned int)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::gnu.linkonce.t._M_clone(std::allocator<char> const
&, unsigned int)+0x124): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::1Zc(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const &)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t.(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const &)+0x198): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `char * std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_construct<char *>(char *, char *,
std::allocator<char> const &, std::forward_iterator_tag)':
/var/tmp/ccduQmv4.o(.char * std::basic_string<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t._S_construct<char *>(char *, char
*, std::allocator<char> const &, std::forward_iterator_tag)+0x1e4): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::1Zc::<char *>(char *, char *,
std::allocator<char> const &)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t.<char *>(char *, char *,
std::allocator<char> const &)+0x88): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_ostream<char, std::char_traits<char> > & std::flush<char, std::char_traits<char>
>(std::basic_ostream<char, std::char_traits<char> > &)':
/var/tmp/ccduQmv4.o(.std::basic_ostream<char, std::char_traits<char> > & std::gnu.linkonce.t.flush<char, std::char_traits<char>
>(std::basic_ostream<char, std::char_traits<char> > &)+0xc): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::flush(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_ostream<char, std::char_traits<char> > & std::endl<char, std::char_traits<char>
>(std::basic_ostream<char, std::char_traits<char> > &)':
/var/tmp/ccduQmv4.o(.std::basic_ostream<char, std::char_traits<char> > & std::gnu.linkonce.t.endl<char, std::char_traits<char>
>(std::basic_ostream<char, std::char_traits<char> > &)+0x14): undefined reference to `std::basic_ios<char, std::char_traits<char> >::widen(char)
const'
/var/tmp/ccduQmv4.o(.std::basic_ostream<char, std::char_traits<char> > & std::gnu.linkonce.t.endl<char, std::char_traits<char>
>(std::basic_ostream<char, std::char_traits<char> > &)+0x28): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::put(char)'
/var/tmp/ccduQmv4.o: In function `std::ios_base::failure type_info function':
/var/tmp/ccduQmv4.o(.gnu.linkonce.t.__tfQ33std8ios_base7failure+0x1c): undefined reference to `std::exception type_info function'
/var/tmp/ccduQmv4.o(.gnu.linkonce.t.__tfQ33std8ios_base7failure+0x34): undefined reference to `std::exception type_info node'
/var/tmp/ccduQmv4.o(.gnu.linkonce.t.__tfQ33std8ios_base7failure+0x38): undefined reference to `std::exception type_info node'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_refdata(void)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::gnu.linkonce.t._M_refdata(void)+0x98): undefined
reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_refcopy(void)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::gnu.linkonce.t._M_refcopy(void)+0xb4): undefined
reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::allocator<char>::1Zc(void)':
/var/tmp/ccduQmv4.o(.std::allocator<char>::gnu.linkonce.t.(void)+0x94): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::allocator<char>::1Zc(std::allocator<char> const &)':
/var/tmp/ccduQmv4.o(.std::allocator<char>::gnu.linkonce.t.(std::allocator<char> const &)+0x98): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::allocator<char>::~1Zc(void)':
/var/tmp/ccduQmv4.o(.gnu.linkonce.t._._Q23stdt9allocator1Zc+0xb0): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::gnu.linkonce.t.(char *,
std::allocator<char> const &)+0x70): more undefined references to `std::terminate(void)' follow
/var/tmp/ccduQmv4.o: In function `std::basic_ios<char, std::char_traits<char> >::~1Zc(void)':
/var/tmp/ccduQmv4.o(.gnu.linkonce.t._._Q23stdt9basic_ios2ZcZQ23stdt11char_traits1Zc+0x20): undefined reference to `std::ios_base::~ios_base(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_ios<char, std::char_traits<char> >::1Zc(void)':
/var/tmp/ccduQmv4.o(.std::basic_ios<char, std::char_traits<char> >::gnu.linkonce.t.(void)+0xc): undefined reference to `std::ios_base::ios_base(void)'
/var/tmp/ccduQmv4.o(.std::basic_ios<char, std::char_traits<char> >::gnu.linkonce.t.(void)+0x4c): undefined reference to `std::ios_base::
~ios_base(void)'
/var/tmp/ccduQmv4.o(.std::basic_ios<char, std::char_traits<char> >::gnu.linkonce.t.(void)+0x6c): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_ostream<char, std::char_traits<char> >::1Zc(int, std::basic_streambuf<char, std::char_traits<char> > *)':
/var/tmp/ccduQmv4.o(.std::basic_ostream<char, std::char_traits<char> >::gnu.linkonce.t.(int, std::basic_streambuf<char, std::char_traits<char> > *)
+0xb0): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> > *)'
/var/tmp/ccduQmv4.o(.std::basic_ostream<char, std::char_traits<char> >::gnu.linkonce.t.(int, std::basic_streambuf<char, std::char_traits<char> > *)
+0x118): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::1Zc(std::_Ios_Openmode)':
/var/tmp/ccduQmv4.o(.std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t.(std::_Ios_Openmode)+0xbc): undefined
reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::str(void) const':
/var/tmp/ccduQmv4.o(.std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t.str(void) const+0x154): undefined
reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_streambuf<char, std::char_traits<char> >::imbue(std::locale const &)':
/var/tmp/ccduQmv4.o(.std::basic_streambuf<char, std::char_traits<char> >::gnu.linkonce.t.imbue(std::locale const &)+0x40): undefined reference to
`std::locale::operator=(std::locale const &)'
/var/tmp/ccduQmv4.o(.std::basic_streambuf<char, std::char_traits<char> >::gnu.linkonce.t.imbue(std::locale const &)+0x50): undefined reference to
`std::ctype<char> const & std::use_facet<std::ctype<char> >(std::locale const &)'
/var/tmp/ccduQmv4.o: In function `char * std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_construct<char const *>(char const
*, char const *, std::allocator<char> const &, std::forward_iterator_tag)':
/var/tmp/ccduQmv4.o(.char * std::basic_string<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t._S_construct<char const *>(char
const *, char const *, std::allocator<char> const &, std::forward_iterator_tag)+0x1e4): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::1Zc(char const *, unsigned int,
std::allocator<char> const &)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t.(char const *, unsigned int,
std::allocator<char> const &)+0x90): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const &)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t.assign(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const &)+0x15c): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::setbuf(char *, int)':
/var/tmp/ccduQmv4.o(.std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t.setbuf(char *, int)+0x130): undefined
reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o(.gnu.linkonce.d._vt.Q23stdt15basic_stringbuf3ZcZQ23stdt11char_traits1ZcZQ23stdt9allocator1Zc+0x24): undefined reference to
`std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::seekoff(long, std::_Ios_Seekdir, std::_Ios_Openmode)'
/var/tmp/ccduQmv4.o(.gnu.linkonce.d._vt.Q23stdt15basic_stringbuf3ZcZQ23stdt11char_traits1ZcZQ23stdt9allocator1Zc+0x2c): undefined reference to
`std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::seekpos(std::fpos<__mbstate_t>, std::_Ios_Openmode)'
/var/tmp/ccduQmv4.o(.gnu.linkonce.d._vt.Q23stdt15basic_stringbuf3ZcZQ23stdt11char_traits1ZcZQ23stdt9allocator1Zc+0x44): undefined reference to
`std::basic_streambuf<char, std::char_traits<char> >::xsgetn(char *, int)'
/var/tmp/ccduQmv4.o(.gnu.linkonce.d._vt.Q23stdt15basic_stringbuf3ZcZQ23stdt11char_traits1ZcZQ23stdt9allocator1Zc+0x5c): undefined reference to
`std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::pbackfail(unsigned int)'
/var/tmp/ccduQmv4.o(.gnu.linkonce.d._vt.Q23stdt15basic_stringbuf3ZcZQ23stdt11char_traits1ZcZQ23stdt9allocator1Zc+0x64): undefined reference to
`std::basic_streambuf<char, std::char_traits<char> >::xsputn(char const *, int)'
/var/tmp/ccduQmv4.o(.gnu.linkonce.d._vt.Q23stdt15basic_stringbuf3ZcZQ23stdt11char_traits1ZcZQ23stdt9allocator1Zc+0x6c): undefined reference to
`std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::overflow(unsigned int)'
/var/tmp/ccduQmv4.o: In function `std::locale::operator!=(std::locale const &) const':
/var/tmp/ccduQmv4.o(.gnu.linkonce.t.__ne__CQ23std6localeRCQ23std6locale+0x14): undefined reference to `std::locale::operator==(std::locale const &)
const'
/var/tmp/ccduQmv4.o(.gnu.linkonce.t.__ne__CQ23std6localeRCQ23std6locale+0xac): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_streambuf<char, std::char_traits<char> >::1Zc(void)':
/var/tmp/ccduQmv4.o(.std::basic_streambuf<char, std::char_traits<char> >::gnu.linkonce.t.(void)+0x70): undefined reference to `std::ctype<char> const
& std::use_facet<std::ctype<char> >(std::locale const &)'
/var/tmp/ccduQmv4.o(.std::basic_streambuf<char, std::char_traits<char> >::gnu.linkonce.t.(void)+0x10c): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::1Zc(void)':
/var/tmp/ccduQmv4.o(.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::gnu.linkonce.t.(void)+0xd4): undefined reference to
`std::terminate(void)'
/var/tmp/ccduQmv4.o(.gnu.linkonce.d._vt.Q23stdt15basic_streambuf2ZcZQ23stdt11char_traits1Zc+0x44): undefined reference to `std::basic_streambuf<char,
std::char_traits<char> >::xsgetn(char *, int)'
/var/tmp/ccduQmv4.o(.gnu.linkonce.d._vt.Q23stdt15basic_streambuf2ZcZQ23stdt11char_traits1Zc+0x64): undefined reference to `std::basic_streambuf<char,
std::char_traits<char> >::xsputn(char const *, int)'
/var/tmp/ccduQmv4.o: In function `std::locale::locale(void)':
/var/tmp/ccduQmv4.o(.std::locale::gnu.linkonce.t.(void)+0x10): undefined reference to `std::locale::_S_global'
/var/tmp/ccduQmv4.o(.std::locale::gnu.linkonce.t.(void)+0x14): undefined reference to `std::locale::_S_global'
/var/tmp/ccduQmv4.o(.std::locale::gnu.linkonce.t.(void)+0xb8): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::locale::~locale(void)':
/var/tmp/ccduQmv4.o(.gnu.linkonce.t._._Q23std6locale+0xbc): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::locale::_S_initialize(void)':
/var/tmp/ccduQmv4.o(.std::locale::gnu.linkonce.t._S_initialize(void)+0x4): undefined reference to `std::locale::_S_classic'
/var/tmp/ccduQmv4.o(.std::locale::gnu.linkonce.t._S_initialize(void)+0x8): undefined reference to `std::locale::_S_classic'
/var/tmp/ccduQmv4.o(.std::locale::gnu.linkonce.t._S_initialize(void)+0x1c): undefined reference to `std::locale::classic(void)'
/var/tmp/ccduQmv4.o: In function `std::locale::_Impl::_M_add_reference(void)':
/var/tmp/ccduQmv4.o(.std::locale::_Impl::gnu.linkonce.t._M_add_reference(void)+0x94): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::locale::_Impl::_M_remove_reference(void)':
/var/tmp/ccduQmv4.o(.std::locale::_Impl::gnu.linkonce.t._M_remove_reference(void)+0x38): undefined reference to `std::locale::_Impl::~_Impl(void)'
/var/tmp/ccduQmv4.o(.std::locale::_Impl::gnu.linkonce.t._M_remove_reference(void)+0x12c): undefined reference to `std::terminate(void)'
/var/tmp/ccduQmv4.o: In function `std::locale::locale(std::locale const &)':
/var/tmp/ccduQmv4.o(.std::locale::gnu.linkonce.t.(std::locale const &)+0xa8): undefined reference to `std::terminate(void)'
collect2: ld returned 1 exit status
what's next missing (step by step..) ?
TIA, Bruno
More information about the Libstdc++
mailing list