Способ установки средств locale может довольно сильно различаться в операционных системах от разных производителей, особенно для реализаций POSIX до 1996 года и переходных реализациий.
Как описано тут, структурно средства POSIX locale состоят из следующих компонентов :
Предположим, что библиотека libc на Вашей системе содержит все необходимые вызовы. Иначе придется поменять библиотеку (или систему). :-)
В стандарте POSIX.2 (Утилиты командной строки) определенны две утилиты - locale и localedef. Если система отвечает стандарту POSIX.2:1996, на вашей машине они имеются.
Утилита locale служит для получения различной информации о текущих значениях категорий locale, o всех установленных в системе возможных locale и о внутренних характеристиках различных категорий locale.
Имея утилиту locale можно проверить наличие необходимых "объектов локализации", а потом включить необходимое языковое окружение.
Ситуация чуть осложняется, если необходимые "объекты локализации" отсутствуют. К счастью, стандарт POSIX варианта 1996 г. сделан более переносимым, не зависящим от конкретной реализации и все действия пользователя не различаюся от системы к системе и их внутренняя реализация скрыта за утилитами POSIX.2.
Если в системе не предустановлено нужные нам "объекты локализации", они могут быть добавлены в систему с помощью утилиты localedef путем компиляции специальных (текстовых) файлов описания параметров : Файла Описания Набора Символов (Characher Set Definition File) и Файла Описания Локализации (locales) . После этого они становится изветным системе и видимым по `locale -a`.
$ localedef -c -i ru_RU -f ISO_8859-5 ru_RU $ localedef -c -i ru_RU -f KOI8-R ru_RU.KOI8-R
Данные файлы в исходном (текстовом) виде можно получить из коллекции ftp://dkuug.dk/i18n или из комплекта исходных текстов библиотеки glibc 2.x (./localedata/* ).
Еще один вариант - это просто скопировать недостающие "объекты локализации" в двоичном виде. Некоторые производители UNIX поставляют для своих систем продукт "Language Kit", который есть ни что иное, как комплект данных файлов. К сожалению, стандарт POSIX никак не определяет внутренний формат объектов локализации. Поэтому "Language Kit" одной системы скорее всего не подойдет к другой.
Для расширения кругозора, можно ознакомится с примером реализации подсистемы locale в операционной системе Linux.
После выполнения необходимых устоновок, работоспособность locale можно проверить.
Содержание "Locale AS IT IS"