Salut les C,
j'ai le problème suivant avec gettext qui est en théorie assez simple d'utilisation:
1. L'on définis quelques macro appelant gettext
Puis l'on place ces quelques lignes au début de la fonction main(...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 #include <libintl.h> #define _(String) gettext (String) #define gettext_noop(String) String #define N_(String) gettext_noop (String)
Seulement je n'arrive pas a faire marcher la traduction en mettant les *.mo
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 int main (int argc, char *argv[]) { setlocale (LC_ALL, ""); bindtextdomain (PACKAGE, LOCALEDIR); textdomain (PACKAGE); }
dans un dossier de mon répertoire de travail de telle arborescence:
./my_prg
./my_prg/bin
./my_prg/source
./my_prg/share/my_prg
./my_prg/share/locale/fr/LC_MESSAGES/my_prg.mo
ou alors
./my_prg/share/my_prg/fr/LC_MESSAGES/mr_prg.mo
Alors je ne comprends pas pourquoi cela ne mache pas quand je modifie la variable d'environnement LANG ?
Alors que je définis:
Toute aide est la bienvenue, merci pour vos réponses éclairées.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 #ifdef PACKAGE #undef PACKAGE #define PACKAGE ./my_prg/bin/my_prg #endif #ifdef LOCALEDIR #undef LOCALEDIR #define LOCALEDIR ./my_prg/share/locale #endif
Partager