FYI
http://oriya.sarovar.org/docs/gettext_single.htmlО том как надо писать программы, чтобы затем переводить можно было на разные языки.
На примере простого кода
#include <libintl.h>
#include <locale.h>
#include <stdio.h>
#include <stdlib.h>
#define _(STRING) gettext(STRING)
int main(void)
{
setlocale(LC_ALL, "");
bindtextdomain( "hello", "/usr/share/locale" );
textdomain( "hello" );
printf( _( "Hello, world!\n" ) );
exit(0);
}
его можно собрать gcc hello.c -o hello и убедиться что работает ./hello
Далее xgettext -a --output=hello.pot hello.c
получаем hello.pot file
msginit -l ru_RU -o hello.po -i hello.pot
получим hello.po переводим в poedit и в итоге будет нам hello.mo
sudo cp hello.mo /usr/share/locale/ru/LC_MESSAGES
запускаем снова ./hello
должно получиться Привет, мир!
PS Аналогичным образом мне удалось заставить заговорить по русски bash скрипт