linux 程序 国际化 本地化

1.程序中添加:

#include
#include
#include //包含了两个头文件

#define _(STRING) gettext(STRING) //定义了_(STRING)宏,只是为了简化
#define PACKAGE "test_locale" //定义了软件包的名字,最后生成的.mo文件名应该命名为这个
#define LOCALEDIR "~/work/practice/locale" //定义了mo文件将要存放的位置

int main(int argv,int*argc[])
{
setlocale (LC_ALL, "");
bindtextdomain (PACKAGE, LOCALEDIR); //bind软件包与mo文件存放的位置
textdomain (PACKAGE);

printf(_("hello,world!/n")); //将_(STRING)宏应用到了字符串上

}

2.po文件夹中编辑POTFILES  POTFILES.in

此文件中包含要翻译的源代码文件

 

3.

intltool-updata -p   生产pot文件
intltool-updata --maintain 更新
msginit --local=zh_CN
msgfmt -o *.mo zh_CN.po

 

*.mo即是所需

你可能感兴趣的:(Linux)