1.10.36 6.36. Gettext-0.14.5

优质
小牛编辑
124浏览
2023-12-01

Gettext 用于系统的国际化和本地化,可以在编译程序的时候使用本国语言支持(NLS),可以使程序的输出使用用户设置的语言而不是英文。

预计编译时间: 1 SBU所需磁盘空间: 65 MB

6.36.1. 安装 Gettext

为编译 Gettext 做准备:

./configure --prefix=/usr

编译软件包:

make

要测试结果,请运行:make check 。这需要大约 5 SBU 。

安装软件包:

make install

6.36.2. Gettext 的内容

安装的程序: autopoint, config.charset, config.rpath, envsubst, gettext, gettext.sh, gettextize, hostname, msgattrib, msgcat, msgcmp, msgcomm, msgconv, msgen, msgexec, msgfilter, msgfmt, msggrep, msginit, msgmerge, msgunfmt, msguniq, ngettext, xgettext安装的库: libasprintf.{a,so}, libgettextlib.so, libgettextpo.{a,so}, libgettextsrc.so

简要描述

autopoint将标准的 gettext infrastructure 文件拷贝到源码包中
config.charset产生一个依赖于系统的字符编码表
config.rpath输出依赖于系统的变量,描述如何在可执行程序中设置库文件的实时查找路径。
envsubst替换 shell 格式化字符串中的环境变量
gettext通过在消息列表中查找,来将一种自然语言的消息翻译成用户的本地语言
gettext.sh主要作为一个shell的函数库来为 gettext 服务
gettextize拷贝所有的标准 Gettext 文件到软件包的顶层目录下,以进行国际化。
hostname用不同的格式显示一个网络主机名
msgattrib根据翻译目录中消息的属性过滤它们,并且操作这些属性。
msgcat将给定的 .po 文件合并到一起
msgcmp比较两个 .po 文件,看它们是否包含相同的 msgid 字符串
msgcomm找出不同 .po 文件中的相同信息
msgconv把一个翻译列表转化成另一种字符编码
msgen建立一个英文翻译目录
msgexec对一个翻译列表中的所有翻译执行同一个命令
msgfilter对一个翻译列表中的所有翻译使用同一个过滤器
msgfmt从翻译列表生成一个二进制的消息列表
msggrep将一个翻译列表中的所有符合给定格式或者属于给定源文件的消息展开
msginit生成一个新的 .po 文件,并使用用户环境中的消息来对这个文件进行初始化。
msgmerge将两个翻译合并成一个
msgunfmt将二进制翻译文件反编译成源文件
msguniq将翻译目录中重复的翻译合并成一个
ngettext显示依赖于数字格式的文本文件的本国语言翻译
xgettext从源文件中展开消息行, 用来创建起始翻译模板
libasprintf定义 autosprintf 类,使 C 的函数以 C++ 程序可使用的结构输出,与 <string> 字符串和 <iostream> 流一起使用。
libgettextlib包含多个 gettext 程序使用的函数,是私有库
libgettextpo用来写处理 .po 文件的程序。当 Gettext 自带的标准程序(如 msgcomm, msgcmp, msgattrib, msgen)不能满足要求时,可以使用这个库。
libgettextsrc包含多个 gettext 程序使用的函数,是私有库。