Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Wed, 24 Sep 2003 21:59:14 -0700 To: cygwin AT cygwin DOT com Subject: No support for wchar_t in latest Cygwin? Message-ID: <20030925045912.GA2878@firesong> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="cNdxnHkX5QqsyA0e" Content-Disposition: inline User-Agent: Mutt/1.5.4i From: Joshua Kwan --cNdxnHkX5QqsyA0e Content-Type: text/plain; charset=us-ascii Content-Disposition: inline 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::compare(wchar_t const*, wchar_t const*, unsigned)' ./toolkit/.libs/libtoolkit.a(tstring.o)(.text+0x1984):tstring.cpp: undefined reference to `std::char_traits::length(wchar_t const*)' ./toolkit/.libs/libtoolkit.a(tstring.o)(.text+0x214c):tstring.cpp: undefined reference to `std::char_traits::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::length(wchar_t const*)' ./toolkit/.libs/libtoolkit.a(tstring.o)(.text$_ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwjj+0x3f):tstring.cpp: undefined reference to `std::char_traits::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::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::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::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::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::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::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::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::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::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::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 --cNdxnHkX5QqsyA0e Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iQIVAwUBP3J2IKOILr94RG8mAQLB6BAAjKqZ5DGBG0a8M9jVLpb30qPAokqYJjmp 7IzeDh2NbREHQDhugvqk0Y/eL5JHipiUTNzNDcgyplIU2MVy6Das3NnH5ALUkz0f ADVqKe9uaWdwgAKZ8nnIcbz4tEkIY7Wus+YGeQ48pthTMZbA8J7LuhNmo5Ylzd9y YpLccEsdNmfg+hA9rRbnRETkSTa9rFYwX3XxSt6R3YMvbaXxMri0Vdsx+AA87394 XuQW9gMC+7Ca7PbVpuZbDSXCCrvAahoMPbks8AFf8ULPlOcR0D1VHczlhbxJ7e// 8oFuoOOMNK9qGndLghFMP1tXYMx9b1IGKgxFuxv6R38OA/s6HDPb8na0wmu76vTy uIRw0Hge3cEdCGMe6cOkoVrhHZ1kVrNmf6OH5ILVJUsRP4v9IO4QSxJPBDZraONy oyT5lr1yRShW6tmROfBUyLFxIMzAga3shItwL9jEzBwB9Nv/j0b9RdYnYMfiP5xm oSx829F7q5MnK9KTlEej+7Qfec5hp/SWfn096YU0PdBinNLAgw43WRrvpD41KnYt GxDPrpFy0X5pEnXbvC+M6WybLCshh9drYUdqF8Gif3eoYHgLbZ1mbqsopcKd9WPY gBE0VZkVQakG7sjP5ph+lGYF0HwXwyXBu1LoOB/xdUz+MwymjHIKhSatQ5mniWc0 S66YRVaGW3s= =z+bm -----END PGP SIGNATURE----- --cNdxnHkX5QqsyA0e--