Cannot compile on Solaris

Aaron Williams aaronw at net.com
Sat Oct 23 00:26:53 CEST 2004


I am unable to get taglib to compile with Solaris 2.8 using GCC 3.3.4.  Note 
that I can compile KDE (3.3.1), QT (3.3.3), and most other libraries fine 
without any problem.  Has anyone else had this problem or found a way around 
it?  I have tried both with and without --enable-final and other variations 
without any success.

-Aaron

make[3]: Entering directory `/var/tmp/kde/archive/taglib-1.3/taglib'
/bin/bash ../libtool --silent --mode=link --tag=CXX g++  -Wnon-virtual-dtor 
-Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wwrite-strings -O2 
-fno-exceptions -fno-check-new   -L/opt/gcc3.3/lib -lstdc++ -o 
libtag.la.closure libtag_la_closure.lo  -no-undefined -version-info 4:0:3 
libtag_la.all_cpp.lo  ./mpeg/libmpeg.la ./ogg/libogg.la ./flac/libflac.la ./mpc/libmpc.la ./ape/libape.la ./toolkit/libtoolkit.la
libtool: link: warning: `-version-info' is ignored for programs
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)(.text+0x2104): In 
function `TagLib::String::operator==(TagLib::String const&) const':
: undefined reference to `std::char_traits<wchar_t>::compare(wchar_t const*, 
wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)(.text+0x2170): In 
function `TagLib::String::operator+=(wchar_t const*)':
: undefined reference to `std::char_traits<wchar_t>::length(wchar_t const*)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)(.text+0x2aa0): In 
function `TagLib::String::operator<(TagLib::String const&) const':
: undefined reference to `std::char_traits<wchar_t>::compare(wchar_t const*, 
wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEEC1EPKwRKS1_+0x10): In 
function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::basic_string[in-charge](wchar_t const*, 
std::allocator<wchar_t> const&)':
: undefined reference to `std::char_traits<wchar_t>::length(wchar_t const*)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwjj+0x28): In 
function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::find(wchar_t const*, unsigned, unsigned) const':
: undefined reference to `std::char_traits<wchar_t>::compare(wchar_t const*, 
wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_jw+0x80): 
In function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::replace(__gnu_cxx::__normal_iterator<wchar_t*, 
std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> 
> >, __gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, unsigned, wchar_t)':
: undefined reference to `std::char_traits<wchar_t>::assign(wchar_t*, 
unsigned, wchar_t)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_cloneERKS1_j+0x70): 
In function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::_Rep::_M_clone(std::allocator<wchar_t> const&, 
unsigned)':
: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t 
const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj+0xd4): In 
function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::_M_mutate(unsigned, unsigned, unsigned)':
: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t 
const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj+0xec): In 
function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::_M_mutate(unsigned, unsigned, unsigned)':
: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t 
const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj+0x130): In 
function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::_M_mutate(unsigned, unsigned, unsigned)':
: undefined reference to `std::char_traits<wchar_t>::move(wchar_t*, wchar_t 
const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE12_S_constructIPKwEEPwT_S7_RKS1_St20forward_iterator_tag+0x54): 
In function `wchar_t* std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::_S_construct<wchar_t const*>(wchar_t const*, 
wchar_t const*, std::allocator<wchar_t> const&, std::forward_iterator_tag)':
: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t 
const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE12_S_constructIN9__gnu_cxx17__normal_iteratorIPwS2_EEEES6_T_S8_RKS1_St20forward_iterator_tag+0x5c): 
In function `wchar_t* std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> 
>::_S_construct<__gnu_cxx::__normal_iterator<wchar_t*, 
std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> 
> > >(__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, 
__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, 
std::allocator<wchar_t> const&, std::forward_iterator_tag)':
: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t 
const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE15_M_replace_safeIN9__gnu_cxx17__normal_iteratorIPwS2_EEEERS2_S7_S7_T_S9_+0x84): 
In function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >& std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> 
>::_M_replace_safe<__gnu_cxx::__normal_iterator<wchar_t*, 
std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> 
> > >(__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, 
__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, 
__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, 
__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >)':
: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t 
const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE12_S_constructIN9__gnu_cxx17__normal_iteratorIPKwS2_EEEEPwT_SA_RKS1_St20forward_iterator_tag+0x5c): 
In function `wchar_t* std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::_S_construct<__gnu_cxx::__normal_iterator<wchar_t 
const*, std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> > > >(__gnu_cxx::__normal_iterator<wchar_t const*, 
std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> 
> >, __gnu_cxx::__normal_iterator<wchar_t const*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, 
std::allocator<wchar_t> const&, std::forward_iterator_tag)':
: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t 
const*, unsigned)'
./toolkit/.libs/libtoolkit.a(libtoolkit_la.all_cpp.o)
(.gnu.linkonce.t._ZNSbIwSt11char_traitsIwESaIwEE15_M_replace_safeIPKwEERS2_N9__gnu_cxx17__normal_iteratorIPwS2_EESA_T_SB_+0x7c): 
In function `std::basic_string<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >& std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_replace_safe<wchar_t 
const*>(__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, 
__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >, wchar_t const*, 
__gnu_cxx::__normal_iterator<wchar_t*, std::basic_string<wchar_t, 
std::char_traits<wchar_t>, std::allocator<wchar_t> > >)':
: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t 
const*, unsigned)'
collect2: ld returned 1 exit status
make[3]: *** [libtag.la.closure] Error 1
make[3]: Leaving directory `/var/tmp/kde/archive/taglib-1.3/taglib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/kde/archive/taglib-1.3/taglib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/kde/archive/taglib-1.3'


More information about the taglib-devel mailing list