Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 23 May 2007 18:45:49 -0700 (PDT)
From:      KAYVEN  RIESE <kayve@sfsu.edu>
To:        Artem Kuchin <matrix@itlegion.ru>
Cc:        freeBSD bugs mailing list <freebsd-stable@freebsd.org>, KAYVEN RIESE <kayve@sfsu.edu>
Subject:   Re: Broken locale after upgrade to 6-STABEL from 5-STABLE
Message-ID:  <Pine.SOC.4.64.0705231843300.11128@libra.sfsu.edu>
In-Reply-To: <009601c79d81$4e791a90$05000100@Artem>
References:  <009601c79d81$4e791a90$05000100@Artem>

next in thread | previous in thread | raw e-mail | index | archive | help
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

---559023410-1483920592-1179971149=:11128
Content-Transfer-Encoding: QUOTED-PRINTABLE
Content-Type: TEXT/PLAIN; charset=koi8-r; format=flowed

On Thu, 24 May 2007, Artem Kuchin wrote:

> /lib/libc.so.5
>
> I chflaged it, deleted it and made a link to
> libc.so.6

this guy sounds familiar.  i am really hosed right now, i can't
run a browser simultaneously, maybe i am being really stupid,
but what do you mean when you say you "chflaged" it?  an explicit
unix command line dingy is the sort of thing that makes me happy.

>
> After that setlocale in perl worked fine.
>
> However, on another server, where setlocale worked
> and works fine this libc.so.5 also present and causes
> no problems.
>
> What i don't understand, is how the appropriate 'so'
> is selected? How freebsd known which so to load
> this
> libc.so.5
> or this
> libc.so.6
> ?
>
> where it is specified?
>
> Another question, is why setlocale in C
> says that locale is set fine.
>
> A simple proggie:
>
> #include <locale.h>
> #include <errno.h>
>    #include <ctype.h>
>
> main(){
>
>   char *b=3Dsetlocale(LC_ALL, "ru_RU.CP1251");
>   if (!b){
>       printf("FAILED! %d\n",errno);
>   }
>   else {
>       printf("OK: %s %d\n",b,errno);
>       printf("LOCALE %s\n",setlocale(LC_CTYPE,NULL));
>       printf("1: TO UPPER %c TO LOWER %c\n",toupper('=D1'),tolower('=F1')=
);
>       printf("1-0: TO UPPER %c TO LOWER %c\n",toupper('=F1'),tolower('=D1=
'));
>       printf("2: TO UPPER %c TO LOWER %c\n",toupper('r'),tolower('R'));
>   }
> }
>
> Does not work even when locales work on perl (toupper does not
> return an upper letter for russia, but works with latin r, same
> with tolower).
>
> Am i missing something?
>
>
>
>
> --
> Regards,
> Artem=20
> _______________________________________________
> freebsd-stable@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"
>

*----------------------------------------------------------*
   Kayven Riese, BSCS, MS (Physiology and Biophysics)
   (415) 902 5513 cellular
   http://kayve.net
   Webmaster http://ChessYoga.org
*----------------------------------------------------------*
---559023410-1483920592-1179971149=:11128--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SOC.4.64.0705231843300.11128>