logging-log4cxx-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Curt Arnold <carn...@apache.org>
Subject Re: Solaris 10 and gcc update
Date Wed, 11 May 2005 01:46:32 GMT
>> The failure in test9 is likely happening on the following line:
>>   std::locale localeUS(LOCALE_US);
>> where LOCALE_US = "en_US".  Do you have any documentation on the  
>> names
>> recognized for std::locale constructors on Solaris?
> I am pretty sure en_US is a valid locale.  I went to the /usr/lib/ 
> locale and
> there is a en_US directory.  Any other thoughts on what to try??

Nope.  That isn't an essential test, I'd just comment it out in the  
CPPUNIT_TEST block at the top and we will dig into it later.

>> When I tried to build without the -Dlogchar=utf8 -Dhas.wchar_t=0
>> command
>> lines, I got the following link error.
>> build-shortsocketserver:
>>     [mkdir] Created dir:
>> /export/disk10/cppProjects/logging-log4cxx/build/debug/shared/
>> shortsocketser
>> ver_obj
>>        [cc] 2 total files to be compiled.
>>        [cc] Starting link
>>        [cc] Undefined                   first referenced
>>        [cc]  symbol                         in file
>>        [cc] log4cxx::helpers::UnicodeHelper::encodeWide(unsigned int,
>> wchar_t*)/export/disk10/cppProjects/logging-log4cxx/build/debug/
>> shared/liblo
>> g4cxx.so
>>        [cc] log4cxx::helpers::UnicodeHelper::decodeWide(wchar_t
>> const*&,
>> wchar_t
>> const*)/export/disk10/cppProjects/logging-log4cxx/build/debug/shared/
>> liblog4
>> cxx.so
>> Any suggestions on what I could do to resolve this?
>> Those methods have been suppressed since you specified that the
>> compiler did not have a wchar_t type with the -Dhas.wchar_t=0.  I
>> assume that Solaris gcc actually has a wide character type and you
>> could turn it on and the problem would go away.  However, I should
>> review shortsocketserver to see why it doesn't build when wchar_t is
>> not present.
> I got this error when I used the ant -Dapr.dir=/usr/local/apr
> -Dcppunit.dir=/export/disk10/cppProjects/cppunit-1.10.2
> Looking at the unicodehelper.cc, I'm not sure the __STD_ISO_10646__ is
> defined.  I think this is why then encodeWide is not defined.  I did a
> search through various header files and the STD_ISO_10646 was no  
> where to be
> found.

__STD_ISO_10646__ is defined by the compiler when the wchar_t  
contains UCS-4 code points (that is 4 byte unicode scalar values).   
encodeWide and decodeWide will be compiled for WIN32 (where wchar_t  
is UTF-16) and when __STD_ISO_10646__ is defined (where wchar_t is  
UCS-4).  Do you have a description of wchar_t is on that platform and  
how it can be detected.

View raw message