[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: locale errors



On Fri, Mar 26, 2004 at 03:48:27PM +0000, Conall O'Brien wrote:
> On Thu, Mar 25, 2004 at 11:17:52PM GMT, Al Davis 
> <ad35@freeelectron.net> incoherently babbled:
> > If someone can explain why this happens, that would be nice.  I am 
> > guessing that it has something to do with locale being updated, but 
> > some applications or dynamic libraries or something like that are 
> > already running with the old one, so it gets a mix and complains.
> 
> The enviromental variable $LC_CTYPE is one of the shell variables that
> people like myself set ourselves if we want to use Unicode or another
> system locale. Run locale -a for a list of locales available on your
> system.
> 
> 
> Unfortunately, Perl has issues with Unicode, and so throws up errors as
> the one initially mentioned. Since debconf is written in Perl, this
> error occurs.

Perl has issues with Unicode? No, the error occurs because the locale
does not exist on Al's system. 'dpkg-reconfigure locales' creates it.
Perl works just fine in en_GB.UTF-8; there are a number of bugs in the
Unicode support in 5.6, but none that create the error Al is seeing.

I wouldn't like to bet on exactly why Al's seeing the error he's seeing
even after running 'dpkg-reconfigure locales'; I'd have to see a
transcript to be sure. However, it is not because Perl doesn't support
it.

> There are 3 options to stop the error occurring:
> 
> 
> o Unset all the locale variables so your account used the system
> default. See the locale man page for the list of envirmental variables.
> 
> o Recompile your kernel with UTF8 as the standard locale.

Your *kernel*? I think not. Locales are userspace.

> o Use zsh and set $PERL_BADLANG to "0" by adding this line to
> $HOME/.zshenv: "export PERL_BADLANG=0"

And why is that zsh-specific?

Cheers,

-- 
Colin Watson                                  [cjwatson@flatline.org.uk]



Reply to: