`Gtk-WARNING **: Paramètres régionaux non pris en charge par la bibliothèque C. `lors du démarrage des applications à partir de la ligne de commande

31

Je n'ai pas obtenu de réponse mais je n'ai rien fait et c'est un sujet intéressant. Dans Ubuntu 12.04, lors de l'ouverture d'un fichier dans gedit ou si je travaille sur la ligne de commande dans dpkg, je reçois l'erreur "locale non prise en charge, retombant dans les bibliothèques" C "par défaut", et celle ci-dessous,

Gtk-WARNING **: Locale not supported by C library.
    Using the fallback 'C' locale.
Lanterne Diogène
la source
Vos paramètres régionaux semblent être endommagés. Comment avez-vous installé Ubuntu exactement? Il semble que vous l'ayez installé de manière à ce que les paramètres régionaux ne soient pas configurés correctement. Veuillez fournir plus d'informations à ce sujet dans votre question (modifiez-la). Et non, la Clocale est l'endroit où elle revient si aucune localisation n'est disponible. Cela vient du langage de programmation C.
gertvdijk
Merci pour la réponse. Mon installation Ubuntu est un dossier à l'intérieur du répertoire Windows. Je sais pourquoi je l'ai installé là-bas. J'étais paresseux à l'installation et j'ai laissé le démon Linux faire cette partie pour moi.
Diogenes Lantern

Réponses:

30

Assurez-vous d'abord que la langue de votre bibliothèque est installée

sudo apt-get install language-pack-en-base,

par exemple.

Ensuite, en tant que superutilisateur, raccourcissez le travail en permettant à Ubuntu de les configurer automatiquement:

sudo dpkg-reconfigure locales

Vérifiez votre configuration, si elle est correcte, alors bonne. Mais si les paramètres LANG=or LANGUAGE=sont vides, exécutez-le en ligne de commande:

locale -a

Qui génère les paramètres régionaux installés et disponibles pour vous.

Choisissez les paramètres régionaux dans la sortie générée qui correspondent à votre situation et exportez ce paramètre pour remplacer vos paramètres régionaux, par exemple:

export LC_ALL="en.utf-8"

Pour une installation manuelle, utilisez exportpour définir manuellement les paramètres régionaux qui installeront manuellement les paramètres régionaux personnalisés, exécutez d'abord la configuration comme ci-dessus.

Ensuite, dites que vous souhaitez installer "en_us-8"pour la langue mais avez besoin d'un autre paramètre régional pour NUMERICet TIME, vous pouvez utiliser "en_NZ.utf-8"(rappelez-vous: ils sont sensibles à la casse) ou LANGUAGE="en_GB.utf-8"et NUMERIC="en.dk.ISO-8859-15". Voyager en Nouvelle-Zélande, je pourrais changer les paramètres régionaux LANGUAGE="en.NZ". Pour l'Allemagne, j'aurais juste besoin d'installer le paquet local pour cela et de saisir, dans le terminal, comme les exemples ci-dessous:

export LC_ALL="en_US"
export LANG="en_US"
export LANGUAGE="en_NZ"
export C_CTYPE="en_US"
export LC_NUMERIC=
export LC_TIME=en"en_US"

LC_ALL= peut rester vide.

Lanterne Diogène
la source
3

première:

sudo apt-get purge locales

puis:

sudo aptitude install locales

et le célèbre:

sudo dpkg-reconfigure locales

Cela élimine le système de locales, puis réinstalle les locales et rétrograde libc6 de 2.19 à 2.13, ce qui est le problème. Puis configure à nouveau les paramètres régionaux.

tkjef
la source
1
C'est très trompeur. N'utilisez jamais cette réponse, la première commande supprimera beaucoup de logiciels avec leurs données, par exemple postgresql.
Eric Wang
@EricWang vous avez raison de penser qu'il peut supprimer d'autres logiciels, et cela se produira parce que ce logiciel s'appuie sur la bibliothèque libc6 2.19 (ou quelque chose de plus). Très souvent, ce logiciel est la chose qui a mis à niveau votre système et l'a mis dans cet état de paramètres régionaux non pris en charge par la bibliothèque C. Quoi qu'il en soit, vous devez vérifier ce qui est supprimé avant de confirmer.
tkjef
3

Cela m'est venu à l'esprit plus d'une fois, sur mon mint mate 18, qui est basé sur Ubuntu 16.04, donc je voudrais partager la solution que j'ai trouvée, au cas où quelqu'un en aurait besoin.

Pas:

(Ces étapes fonctionnent pour mint mate, mais Ubuntu peut avoir des configurations similaires, pas sûr)

  • Ouvrez les "paramètres de langue".
  • Installez les langues, si elles sont manquantes. (Pour moi, j'installerais des langues chinoises et japonaises en plus de l'anglais)
  • Pour l'option Languageet Region, assurez-vous que la langue par défaut pour eux est correcte, par exemple définie sur "Anglais, États-Unis UTF-8",
  • Redémarrez, si une modification est apportée.
  • Vérifiez si ça va.
Eric Wang
la source
0

Avec les paramètres régionaux, vous devez supprimer la langue qui entre en conflit avec votre système, cela a fonctionné pour moi, sur ubunty kylin 16.04, je l'ai installé sur ubuntu 14.04

Bart
la source
0

cela a juste fonctionné pour moi en allant sur gnome-terminal et en tapant la commande apt --fix locales et redémarrez votre linux et votre attente de l'erreur du terminal est terminée.il serait sur votre moniteur cette fois à coup sûr.

Shashank
la source
0
$ mkdir -p $HOME/.locale
$ I18NPATH=./wrk/ localedef -f UTF-8 -i fi_SE $HOME/.locale/fi_SE.UTF-8
$ LOCPATH=$HOME/.locale LC_ALL=fi_SE.UTF-8 date
$ echo "export LOCPATH=\$HOME/.locale" >> $HOME/.bashrc
$ echo "export LANG=fi_SE.UTF-8" >> $HOME/.bashrc

fi_SE à votre LOCALE, et voyez UTF-8 ou utf8

Dzmitry
la source
0

J'ai réussi à provoquer cela moi-même lors de la migration des fichiers de points du répertoire personnel vers une nouvelle machine, et j'ai échoué à identifier la cause pendant un certain temps en raison de la recherche de fichiers, LC_mais pas LOC.

Le ~/.bashrcfichier que j'ai copié comportait les éléments suivants:

export LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale

(La valeur particulière ici était due à des expériences antérieures avec GNU Guix sur l'ancienne machine; mais le fait pertinent est simplement que la variable d'environnement a été définie sur un chemin désormais invalide.)

Cela a entraîné l'erreur suivante lors de l'exécution de divers programmes:

Warning: locale not supported by C library, locale unchanged

Et ces erreurs lors de l'exécution locale:

locale: Cannot set LC_CTYPE to default locale: No such file or directory
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

La suppression (ou la mise en commentaire) de la LOCPATHligne a résolu mes problèmes.

phils
la source