`Gtk-WARNING **: C kütüphanesi tarafından desteklenmeyen yerel ayar. `Komut satırından uygulamalar başlatırken


31

Cevap alamadım ama hiçbir şey yapmadım ve bu ilginç bir konu. Ubuntu 12.04'te, gedit'te bir dosyayı açarken veya dpkg'daki komut satırında çalışıyorsam, "yerel ayar desteklenmiyor, varsayılan" C "kitaplıklarına geri dönüyor" ve aşağıdakilerden birine dönüyorum

Gtk-WARNING **: Locale not supported by C library.
    Using the fallback 'C' locale.

Yerel ayarlarınız bozuk görünüyor. Ubuntu'yu tam olarak nasıl yüklediniz? Yerel ayarların doğru yapılandırılmadığı bir şekilde kurdunuz gibi görünüyor. O ilgili biraz daha bilgi verin içinde sorunuzun (düzeltin). Ve hayır, Cyerel ayar mevcut değilse yerel ayarın geri döndüğü yerdir. C programlama diline ait.
gertvdijk

Yanıt için teşekkürler. Ubuntu kurulumum, Windows dizininin içindeki bir klasördür. Oraya neden yerleştirdiğimi biliyorum. Kurulumda tembel oldum ve Linux iblisinin benim için bu kısmı yapmasına izin verdim.
Diogenes Lantern

Yanıtlar:


30

Öncelikle kütüphane dilinin kurulu olduğundan emin ol

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

Örneğin.

Ardından, superuser olarak, Ubuntu'nun bunları otomatik olarak yapılandırmasına izin vererek işi kısaltın:

sudo dpkg-reconfigure locales

Ayarlarınızı kontrol ediniz, doğru ise iyi. Eğer varsa Ama LANG=ya LANGUAGE=ayarlar boş, komut satırında bu çalıştırın:

locale -a

Hangi yüklü ve size uygun yerelleri üretir.

Durumunuza uygun üretilen çıktıdan yerel ayarı seçin ve yerel ayarlarınızı değiştirmek için bu ayarı dışa aktarın, örneğin:

export LC_ALL="en.utf-8"

Özel kurulumları exportmanuel olarak kuracak yerel ayarları elle ayarlamak için manuel kurulumda , ilk önce kurulum işlemini yapın.

Ardından, "en_us-8"dil için kurmak istediğinizi ancak başka bir yerel ayar için ihtiyaç duyduğunuzu NUMERICve TIMEkullanmak isteyebileceğinizi "en_NZ.utf-8"(unutmayın: bunlar büyük / küçük harf duyarlıdır) veya LANGUAGE="en_GB.utf-8"ve NUMERIC="en.dk.ISO-8859-15". Yeni Zelanda'ya seyahat ederken yerel ayarları değiştirebilirim LANGUAGE="en.NZ". Almanya için, bunun için yerel pkg'leri yüklemem ve aşağıdaki örneklerde olduğu gibi terminalde giriş yapmam gerekiyor:

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= boş kalabilir.


3

ilk:

sudo apt-get purge locales

sonra:

sudo aptitude install locales

ve ünlü:

sudo dpkg-reconfigure locales

Bu, yerellerin sistemini çalıştırır, daha sonra yerelleri yeniden yükler ve sorun olan libc6'yı 2,19'dan 2,13'e düşürür. Sonra tekrar yerel ayarları yapılandırır.


1
Bu çok çok yanıltıcıdır. Bu cevabı asla kullanmayın, ilk komut verisi ile birlikte çok fazla yazılım bırakacaktır, örn postgresql.
Eric Wang

@EricWang, başka bir yazılımı bırakabileceğini ve bu yazılımın libc6 2.19 kütüphanesine (ya da daha yüksek bir şeye) bağlı olduğu için gerçekleşeceği konusunda haklısınız. Sıklıkla bu yazılım, sisteminizi yükselten ve C kütüphanesi tarafından desteklenmeyen bu yerel durum durumuna geçiren şeydi. Ne olursa olsun, onaylamadan önce kaldırılmakta olanı gözden geçirmelisiniz.
tkjef

3

Bu, birden fazla defa meydana geldi, Ubuntu 16.04'e dayanan 18 numaralı nane dostumda, herhangi birinin ihtiyacı olması durumunda bulduğum çözümü paylaşmak istiyorum.

Adımlar:

(Bu adımlar nane arkadaşı için işe yarar, ancak Ubuntu’nun benzer yapılandırmaları olabilir, emin değilim)

  • "Dil ayarları" nı açın.
  • Eksikse dilleri kurun. (Benim için İngilizce'ye ek olarak Çince ve Japonca dilleri de yüklerdim)
  • Seçenek için Languageve Regionvarsayılan dillerin uygun olduğundan emin olun, örneğin "İngilizce, ABD UTF-8" olarak ayarlayın,
  • Herhangi bir değişiklik yapılmışsa, yeniden başlatın.
  • İyi olup olmadığını kontrol et.

0

Yerel ayarlarda, sisteminizle çakışan dili kaldırmanız gerekir, bu benim için çalıştı, ubunty kylin 16.04, ubuntu 14.04'ün üstüne yükledim.


0

gnome-terminal'e gidip apt --fix locales komutunu yazarak ve linux'unuzu yeniden başlatarak benim için işe yaradı ve terminal hatasını beklediğiniz zaman bitti. bu sefer monitörünüzde olacaktır.


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

LOCALE’nize fi_SE’ye bakın ve UTF-8 veya utf8’e bakın.


0

Ben yeni bir makineye ana dizin nokta dosyaları geçiş yaparken kendimi bu neden başardı ve ben için dosyaları aramak dolayı bir süre nedenini belirlemek için başarısız oldu LC_ama LOC.

~/.bashrcKopyalanan dosya aşağıdaki yazıyı vardı:

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

(Buradaki özel değer, eski makinede GNU Guix ile yapılan önceki deneylerden kaynaklanıyordu; ancak ilgili gerçek, çevre değişkeninin şimdi geçersiz bir yola ayarlanmış olmasıdır.)

Bu, çeşitli programları çalıştırırken aşağıdaki hatayı verdi:

Warning: locale not supported by C library, locale unchanged

Ve bu hataları çalıştırırken 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

LOCPATHÇizgiyi kaldırmak (veya yorumlamak) sorunlarımı çözdü.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.