No support for wchar_t in latest Cygwin?

Joshua Kwan joshk@triplehelix.org
Thu Sep 25 06:03:00 GMT 2003


Hi, it's me again :)

I've been developing some software in C++ and have tested it on Linux
and FreeBSD, so I decided yesterday to test it on my Cygwin
installation.

The library I link against the program requires wchar_t support.
However, when I build it:

./toolkit/.libs/libtoolkit.a(tstring.o)(.text+0x18f5):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::compare(wchar_t const*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text+0x1984):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::length(wchar_t const*)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text+0x214c):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::compare(wchar_t const*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEEC1EPKwRKS1_+0x19):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::length(wchar_t const*)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwjj+0x3f):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::compare(wchar_t const*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_jw+0x89):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::assign(wchar_t*, unsigned, wchar_t)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_cloneERKS1_j+0x6f):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE12_S_constructIPKwEEPwT_S7_RKS1_St20forward_iterator_tag+0x4a):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj+0xed):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj+0x114):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj+0x161):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::move(wchar_t*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE12_S_constructIN9__gnu_cxx17__normal_iteratorIPwS2_EEEES6_T_S8_RKS1_St20forward_iterator_tag+0x73):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE15_M_replace_safeIN9__gnu_cxx17__normal_iteratorIPwS2_EEEERS2_S7_S7_T_S9_+0x79):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE12_S_constructIN9__gnu_cxx17__normal_iteratorIPKwS2_EEEEPwT_SA_RKS1_St20forward_iterator_tag+0x73):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned)'
./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNSbIwSt11char_traitsIwESaIwEE15_M_replace_safeIPKwEERS2_N9__gnu_cxx17__normal_iteratorIPwS2_EESA_T_SB_+0x79):tstring.cpp: undefined reference to `std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned)'
collect2: ld returned 1 exit status

This is certainly a bummer :( I saw some emails on mailing lists that
discussed this problem, but I did not notice a conclusive solution. A
message on the GCC ML said that newlib had no UTF-8 support. So, is this
true? Is there a workaround that I can use?

Please CC me on replies, I'm not subscribed. Thanks!

P.S. Elfyn have you implemented {base,dir}name() [1] yet? ;)

[1] http://www.cygwin.com/ml/cygwin/2003-05/msg00010.html
--
Joshua Kwan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 827 bytes
Desc: Digital signature
URL: <http://cygwin.com/pipermail/cygwin/attachments/20030925/0278769e/attachment.sig>


More information about the Cygwin mailing list