Solaris 8 "couldn't set locale correctly"问题
我在启动IHS和Websphere时,系统报了一串couldn't set locale correctly错,但是不影响启动。
locale看了一下:
LANG=zh.GB2312
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=
但是我将LANG改为C后就不抱错了。
请问这是什么原因?开发人员告诉我,必须将字符集设置为中文,否则程序会有问题。
问题点数:100、回复次数:5Top
1 楼ghtsao(月之暗面)回复于 2005-07-13 21:22:45 得分 0
LANG=zh_CN.GBK
LC_CTYPE=
LC_NUMERIC=
LC_TIME=
LC_COLLATE=
LC_MONETARY=
LC_MESSAGES=
LC_PAPER=
LC_NAME=
LC_ADDRESS=
LC_TELEPHONE=
LC_MEASUREMENT=
LC_IDENTIFICATION=
LC_ALL=zh_CN.GBK
Top
2 楼ghtsao(月之暗面)回复于 2005-07-13 21:24:09 得分 0
LANG=C
LC_CTYPE="zh_CN.GB2312"
LC_NUMERIC="zh_CN.GB2312"
LC_TIME="zh_CN.GB2312"
LC_COLLATE="zh_CN.GB2312"
LC_MONETARY="zh_CN.GB2312"
LC_MESSAGES="zh_CN.GB2312"
LC_ALL=zh_CN.GB2312Top
3 楼ghtsao(月之暗面)回复于 2005-07-13 21:28:50 得分 0
LANG是语言环境,不过这个变量的等级最低,改变别的环境变量可以使之失效。
LC_CTYPE是表明字符分类应该使用哪个locale的资料,正是一个locale最基本的要素,通常和该locale使用的编码有关,要使用中文locale的话,一定要设置这个变量。
LC_NUMERIC,LC_TIME,LC_COLLATE,LC_MONETARY分别表示数字,时间,排序和货币单位使用哪个locale的资料,LC_MESSAGE表示应该使用哪个locale的信息作为输出,对于中文用户,如果你想看中文界面的话,最好还是设成中文的。
LC_ALL是表示上面所有的资料,只要设置了LC_ALL为某个特定的变量,其它的会自动跟着变过来。
还有一个LANGUAGE的环境变量,设置它之后,LC_MESSAGES就失效了,LANGUAGE比LC_MESSAGES酷的是,你可以通过设置LANGUAGE来使用多个locale,比如:
export LANGUAGE=de:fr:en
locale 可以显示所有支持的语言,好象没有zh.GB2312, 是zh_CN.GB2312Top
4 楼odyssey_s(cafe_noir)回复于 2005-07-14 15:41:32 得分 0
按你说的修改过了,还是报错。
另一台同样用途的设备环境和我先前配的一样,但是这台就没问题。
LANG=zh.GB2312
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=
Top
5 楼ghtsao(月之暗面)回复于 2005-07-15 00:26:46 得分 0
查一下i18n文件,支持什么语言,必要时加上。Top





