When I always try to install new package I get this message:
Can't set locale; make sure $LC_* and $LANG are correct!
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "en_GB:en",
LC_ALL = (unset),
LC_CTYPE = "en_GB.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
My OS is Debian Jessie 8.3 (Mate) using English with French keyboard.
When I type locale, I get this:
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE=en_GB.UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
Best Answer
Debian ships locales in source form. They need to be compiled explicitly. The reason for this is that compiled locales use a lot more disk space, but most people only use a few of them.
Run
dpkg-reconfigure locales
as root, select the locales you want in the list (with your settings, you needen_GB
anden_US.UTF-8
— I recommend selectingen_US
anden_GB.UTF-8
as well) then press<OK>
.Alternatively, edit
/etc/locale.gen
, uncomment the lines for the locales you want, and runlocale-gen
as root.(Note: on Ubuntu, this works differently: run
locale-gen
with the locales you want to generate as arguments, e.g.sudo locale-gen en_GB en_US en_GB.UTF-8 en_US.UTF-8
.)Alternatively, Debian now has a package
locales-all
which you can install instead oflocales
. It has all the locales pre-generated. The downside is that they use up more disk space (112MB vs 16MB).