Terkadang file arsip lokal (/usr/lib/locale/locale-archive) tidak menyertakan lokal yang ingin Anda gunakan. Dalam hal ini, Anda perlu membuat file lokal baru, atau mengkompilasi lokal dari yang sudah ada dengan:
# localedef -f [charmapfile] -i [inputfile] [outputpath]
misalnya:
# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
Pesan peringatan “tidak kompatibel dengan ASCII, lokal tidak sesuai dengan ISO C ” dapat diabaikan. Perintah ini dapat memberikan lokal yang sesuai bahkan jika Anda mendapatkan pesan peringatan saat menjalankan perintah di atas. Pesan tersebut berarti bahwa “beberapa karakter (yang disediakan dengan mengonversi ASCII ke lokal yang Anda sebutkan) tidak sama dengan kode yang dikonversi ke UCS-4. Misalnya, '\' dan '^' adalah karakter umum yang tidak kompatibel dengan UCS-4 ('\' adalah 0x00a5 dan '^' adalah 0x203e dalam UCS-4, meskipun '\' adalah 0x5c dan '^' adalah 0x7e dalam ASCII).
Anda sekarang dapat menggunakan lokal baru ja_JP.SJIS. Anda dapat memeriksa apakah lokal diterapkan ke arsip lokal dengan:
# localedef --list
Lokal yang tercantum dapat berupa huruf kecil, berbeda dari nama lokal yang sebenarnya. Harap dicatat bahwa lokal baru dapat mengubah aturan pemrosesan karakter teks. Dalam hal ini, Anda mungkin perlu menghapus lokal dari arsip lokal dengan:
# localedef --delete-from-archive [existent_locale_listed_in_localedef--list]