Internationalization RPM规范的国际化

Internationalization RPM规范的国际化,internationalization,rpm,Internationalization,Rpm,单个rpm规范文件必须支持Linux[EN&JA]的多个语言环境。 假设它检查Java是否存在,若不存在,则抛出异常“错误:Java未安装”。在日文机器上,应显示日文信息。在规范文件中,java_err_msg被声明为宏。我想知道如何将下面的“java\u err\u msg”本地化为摘要、组、描述等 %define java\u err\u msg“Error:java未安装” 所以,该规范文件根据PC的语言环境选择相应的消息。 我正在寻找类似Summary、Group、description

单个rpm规范文件必须支持Linux[EN&JA]的多个语言环境。 假设它检查Java是否存在,若不存在,则抛出异常“错误:Java未安装”。在日文机器上,应显示日文信息。在规范文件中,java_err_msg被声明为宏。我想知道如何将下面的“java\u err\u msg”本地化为摘要、组、描述等

%define java\u err\u msg“Error:java未安装”

所以,该规范文件根据PC的语言环境选择相应的消息。 我正在寻找类似Summary、Group、description案例的解决方案,其中基于系统区域设置的rpm将显示适当的消息。如下所示
摘要:AppName
摘要(ja):AppName[日语]
组:XYZ组
组(ja):XYZ组[日语]


请告诉我任何更好的解决方案。

我假设您正在测试rpm%pre脚本let中是否存在java

如果在两个语言环境中只有一条消息,那么您可以 测试发出EN和JA消息的LC_ALL envvar和硬编码 视情况而定

更好的方法是编写一个具有适当区域设置处理的程序 在%pre脚本中调用的,并发出本地化消息 视情况而定

没有办法在rpm标头中包含i18n错误消息 从rpm.spec文件:唯一的i18n标记是Summary:、Group:、和%description

如果java不存在,我不确定如何抛出异常。RPM是
C,不是C++,程序,C.</P> < P>中没有例外。假设你正在以RPM %PRESTEP让测试java存在。

如果在两个语言环境中只有一条消息,那么您可以 测试发出EN和JA消息的LC_ALL envvar和硬编码 视情况而定

更好的方法是编写一个具有适当区域设置处理的程序 在%pre脚本中调用的,并发出本地化消息 视情况而定

没有办法在rpm标头中包含i18n错误消息 从rpm.spec文件:唯一的i18n标记是Summary:、Group:、和%description

如果java不存在,我不确定如何抛出异常。RPM是 C,不是C++,程序,C.

中没有例外。