Locale not supported by C library

From Lapis Wiki

Jump to: navigation, search
Bu makale IPUCU bölümü serisinin bir parçasıdır
Ses Çekirdek Terminal/Kabuk
Dosya İşlemleri Tarayıcılar Diğer

Soru

Bir programı çalıştırdığımda aşağıdaki hatayı alıyorum, sebebi nedir?

Locale not supported by C library.
       Using the fallback 'C' locale.

Cevap

Bir program veya bir kütüphane(library), şu anda kullandığınız LOCALE dizinine erişmek istiyor ve bu dizin mevcut değilse:

warning: locale not supported by C library

şeklinde hata mesajları verir.

İlk önce kullandığınız Linux dağıtımı altında böyle bir Locale dizini var mı yok mu onu kontrol etmeniz gerekir.

Gentoo Linux'da /usr/share/locale dizini altında TR locale dizini mevcuttur. Diger Linux dağıtımlarında farklı yerde olabilir.

Madalyanonun öteki yüzü:

Diyelim ki tr locale dizini mevcut. Fakat buna rağmen aynı hatayı vermeye devam ediyor. O zaman durum başka türlü olabilir. Mesela bir program başlatıldı diyelim ve bu program GNU-Gettext kütüphanesini kullanıyor olsun. Fakat bu programda Türkçe dil desteğinin olmadığını farz edelim. Bu durumda gene buna benzer hatalar alırsınız.


Çözüm:

1. Bu mesajları ignore edebilirsiniz.

2. Programın PO dosyasını alırsınız ve Türkçeye çevirirsiniz. Çevirdikten sonra MO[1] dosyasına çevirirsiniz ve böylece bu hatalarda ortadan kaybolur.


mo[1]: MO dosyaları PO metin dosyalarının binary(ikili) olan halidir. Bir PO metin dosyasından MO binary(ikili) dosyası yaratarak programı Türkçe olarak kullanabilirsiniz. KDE Türkiye sayfasında KBABEL kullanımında sanırım detaylı bilgi mevcut olması lazım.


Bir de şunu ilave edeyim.

LOCALE dizini kullandığınız dağıtıma göre degişik yerlerde olabilir. Mesela:


/usr/share/locale/
/usr/share/i18n/


Kaynak:

http://forum.linux-sevenler.org/index.php/topic,2019.msg9329.html#msg9329