# [warning] sh  cannot change locale

## mcsky2

Bonjour,

J'ai plusieurs warning au demarrage de ma gentoo :

sh : warning : set locale : LC_ALL : cannot change locale (fr_FR@euro)

Je crois que c'est apparu depuis le passage au noyau 2.6.31

Voici ma config noyau pour le langage natif

 CONFIG_NLS=y

CONFIG_NLS_DEFAULT="iso8859-15"

# CONFIG_NLS_CODEPAGE_437 is not set

# CONFIG_NLS_CODEPAGE_737 is not set

# CONFIG_NLS_CODEPAGE_775 is not set

CONFIG_NLS_CODEPAGE_850=y

# CONFIG_NLS_CODEPAGE_852 is not set

# CONFIG_NLS_CODEPAGE_855 is not set

# CONFIG_NLS_CODEPAGE_857 is not set

# CONFIG_NLS_CODEPAGE_860 is not set

# CONFIG_NLS_CODEPAGE_861 is not set

# CONFIG_NLS_CODEPAGE_862 is not set

# CONFIG_NLS_CODEPAGE_863 is not set

# CONFIG_NLS_CODEPAGE_864 is not set

# CONFIG_NLS_CODEPAGE_865 is not set

# CONFIG_NLS_CODEPAGE_866 is not set

# CONFIG_NLS_CODEPAGE_869 is not set

# CONFIG_NLS_CODEPAGE_936 is not set

# CONFIG_NLS_CODEPAGE_950 is not set

# CONFIG_NLS_CODEPAGE_932 is not set

# CONFIG_NLS_CODEPAGE_949 is not set

# CONFIG_NLS_CODEPAGE_874 is not set

# CONFIG_NLS_ISO8859_8 is not set

# CONFIG_NLS_CODEPAGE_1250 is not set

# CONFIG_NLS_CODEPAGE_1251 is not set

# CONFIG_NLS_ASCII is not set

CONFIG_NLS_ISO8859_1=y

# CONFIG_NLS_ISO8859_2 is not set

# CONFIG_NLS_ISO8859_3 is not set

# CONFIG_NLS_ISO8859_4 is not set

# CONFIG_NLS_ISO8859_5 is not set

# CONFIG_NLS_ISO8859_6 is not set

# CONFIG_NLS_ISO8859_7 is not set

# CONFIG_NLS_ISO8859_9 is not set

# CONFIG_NLS_ISO8859_13 is not set

# CONFIG_NLS_ISO8859_14 is not set

CONFIG_NLS_ISO8859_15=y

# CONFIG_NLS_KOI8_R is not set

# CONFIG_NLS_KOI8_U is not set

CONFIG_NLS_UTF8=y

J'ai le baselayout avec le use unicode

Merci d'avance pour vos sugestions/solutions

----------

## kernelsensei

Les locales ont été générées avec ta glibc ? Que donne cat /etc/locale.gen  ?

----------

## mcsky2

En lancant la commande j'ai :

en_US ISO-8859-1

en_US.UTF-8 UTF-8

fr_FR ISO-8859-1

fr_FR@euro ISO-8859-15

fr_FR.UTF-8 UTF-8

----------

## jcTux

Que donne la commande 

```
locale
```

 ?

----------

## d2_racing

Lance cette commande autant avec ton usager que ton compte root pour voir.

----------

## mcsky2

Sous root :

LANG=fr_FR@euro

LC_CTYPE="fr_FR@euro"

LC_NUMERIC="fr_FR@euro"

LC_TIME="fr_FR@euro"

LC_COLLATE="fr_FR@euro"

LC_MONETARY="fr_FR@euro"

LC_MESSAGES="fr_FR@euro"

LC_PAPER="fr_FR@euro"

LC_NAME="fr_FR@euro"

LC_ADDRESS="fr_FR@euro"

LC_TELEPHONE="fr_FR@euro"

LC_MEASUREMENT="fr_FR@euro"

LC_IDENTIFICATION="fr_FR@euro"

LC_ALL=fr_FR@euro

Sous un compte lambda :

LANG=fr_FR@euro

LC_CTYPE="fr_FR@euro"

LC_NUMERIC="fr_FR@euro"

LC_TIME="fr_FR@euro"

LC_COLLATE="fr_FR@euro"

LC_MONETARY="fr_FR@euro"

LC_MESSAGES="fr_FR@euro"

LC_PAPER="fr_FR@euro"

LC_NAME="fr_FR@euro"

LC_ADDRESS="fr_FR@euro"

LC_TELEPHONE="fr_FR@euro"

LC_MEASUREMENT="fr_FR@euro"

LC_IDENTIFICATION="fr_FR@euro"

LC_ALL=fr_FR@euro

C'est normal qu'il n'y ait pas de guillemets pour LC_ALL ?

----------

## jcTux

 *mcsky2 wrote:*   

> C'est normal qu'il n'y ait pas de guillemets pour LC_ALL ?

 

Oui c'est normal. 

Je te conseillerais de passer à l'UTF-8 comme indiqué ici dans la doc : http://www.gentoo.org/doc/fr/utf-8.xml

Ton fichier /etc/locale.gen a l'air ok.

Par contre mets ça dans le fichier /etc/env.d/02locale (crée-le s'il n'existe pas) : LANG="fr_FR.UTF-8"

Puis :

```
# env-update

>>> Regenerating /etc/ld.so.cache...

 * Caching service dependencies ...

# source /etc/profile

```

La commande locale devrait désormais renvoyer :

```
# locale

LANG=fr_FR.UTF-8

LC_CTYPE="fr_FR.UTF-8"

LC_NUMERIC="fr_FR.UTF-8"

LC_TIME="fr_FR.UTF-8"

LC_COLLATE="fr_FR.UTF-8"

LC_MONETARY="fr_FR.UTF-8"

LC_MESSAGES="fr_FR.UTF-8"

LC_PAPER="fr_FR.UTF-8"

LC_NAME="fr_FR.UTF-8"

LC_ADDRESS="fr_FR.UTF-8"

LC_TELEPHONE="fr_FR.UTF-8"

LC_MEASUREMENT="fr_FR.UTF-8"

LC_IDENTIFICATION="fr_FR.UTF-8"

LC_ALL=

```

Esuite ajoute unicode dans tes USE-FLAGs, réemerge sys-libs/ncurses, et lance un :

```
emerge --ask --update --deep --newuse world

```

Enfin lance :

```
 revdep-rebuild --soname libncurses.so.5

```

J'espère que cela t'aura aidé.

----------

