[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 СОЗДАНИЕ БАЗЫ ДАННЫХ СООБЩЕНИЙ

После того, как исходный текст программы изменен для использования
gettxt(3C), необходимо создать базу данных сообщений. Для создания
этой базы данных необходимо создать файлы, которые содержат сообщения
на языке данной локали. Например, следующая страница показывает
сообщения для локали США и для локали Германии. Сообщения нумеруются в
соответствии с их порядком в файле. Чтобы пропустить сообщение, в
соответствующем месте файла сообщений должна стоять пустая строка. В
примере на следующей странице, сообщение 2 отсутствует и , возможно,
будет введено позже. Для создания базы данных исполните команду
mkmsgs(1M). Первый параметр mkmsgs - это имя файла, содержащего
сообщения на требуемом языке. Второй параметр - это имя файла базы
данных. Эта база данных должна быть помещена в директорию
/usr/lib/locale/locale/LC_MESSAGES. Она должна иметь то же имя,
которое используется в вызовах gettxt(3C). Из-за прав доступа к
директории LC_MESSAGES, перенос файла должен выполняться
суперпользователем.
После установки баз данных, программа может исполняться с
использованием различных локалей. При первом запуске используется
локаль DE (Германия). Второй вызов использует локаль C (США).
                    СОЗДАНИЕ БАЗ ДАННЫХ СООБЩЕНИЙ

$ cat C.messages
argument list too long

%s can't open file %s\n
$ cat DE.messages
argumentliste zu lang

%s kann nicht offnen Dateien %s\n
$ mkmsgs C.messages DB
# mv DB /usr/lib/locale/C/LC_MESSAGES
$ mkmsgs DE.messages DB
# mv DB /usr/lib/locale/DE/LC_MESSAGES

$ cc newdb.c -o newdb
$ LANG=DE newdb file1
newdb kann nicht offnen Dateien file1
$ LANG=C newdb file1
newdb can't open file file1

Замечание: команда mv должна исполняться суперпользователем