LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1611|回复: 10

[求助]关于locale的问题

[复制链接]
发表于 2007-1-15 06:29:02 | 显示全部楼层 |阅读模式
最终解决方法:

解决方法:修改/.qt/qtrc文件,加入:
[General]
font=simsun

一切ok...


大家好,手上一个基于LFS5和Qt3开发的产品在中文化方面遇到了严重问题,过来求助。

情况是这样的,机器是北美的公司做的,我们需要作中文化。
1、先说软件环境,操作系统是基于LFS5剪裁的,软件是基于Qt3做的开发。

2、现在遇到的问题:所有应该显示中文的地方都是方块

3、我自己的判断:在软件本身的开发方面对于中文化的处理应该是没有问题,因为程序在开发用的debian上和我自己的dubuntu 6.06上中文显示都很正常。检查了一下系统的状况,没有ttf的中文字体,用locale -a列出来的只有C和POSIX。初步判断是系统的问题。

4、我已经进行的处理,往系统里复制了simsun.ttf,然后mkfontscale,mkfontdir,按照其他帖子的指点重新编辑了.scale和.dir文件,由于系统配置地原因,修改了XF86Config而不是XF86Config-4,使其载入了xtt模块。但是locale那方面我就不知道怎么处理了export LC_ALL=zh_CN.gb2312和LANG=zh_CN.gb2312我也设了,locale列的表已经是zh_CN.gb2312(utf8也尝试过),但是locale -a还是只有C和POSIX。问题就卡在locale这里了。这个系统奇怪的是没有/usr/X11R6/lib/X11/locale文件夹,还有不少和locale设定相关的配置文件也没有

5、问题,请问各位帮忙指点一下迷津,当前这样的情况我应该怎么处理

ps,还有一个现象,在使用xterm输入命令的方式启动他们的软件的时候会有 Qtocales not supported on X server的提示。
 楼主| 发表于 2007-1-20 02:45:46 | 显示全部楼层
是因为编译libc、glibc的时候没有编译locale么?还是别的原因?locale命令可以使用,我还有什么办法可以补救么?
回复 支持 反对

使用道具 举报

发表于 2007-1-20 05:56:45 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-1-20 21:01:38 | 显示全部楼层
Post by d00m3d
重新执行 localedef 行不?

http://www.linuxfromscratch.org/ ... hapter06/glibc.html


恩,感谢您的指点,我看了那篇文章,然后也参考了一下相关资料,又发现了一些新的问题。

1、使用localedef -i的时候,提示没有相应的目录,比方说我使用"localedef -i fr_FR -f UTF-8 fr_FR.UTF-8",给的提示是"cannot read character map directory '/usr/share/i18n/charmaps': No such file or directory"。

2、针对这个问题,其他资料上说,如果没有相应的文件在/usr/share/i18n/SUPPORTED目录下,可以使用locale-gen生成,但是我这里的这台机器根本没有locale-gen工具,而且也没有locale-gen需要的i18n目录

3、于是我从我的dubuntu6.06上找来了一下东东:/usr/sbin/locale-gen文件;/usr/share/i18n/SUPPORTED文件;/usr/share/i18n/locales/zh_CN文件;/usr/share/i18n/charmaps/utf-8.gz;GB2312.gz;GBK.gz文件。并且在我的目标机上建立了相关文件夹复制了以上四个文件(使用root登陆,locale-gen指定了a+rwx权限,其他目录和文件未作设定)。

4、在目标机上运行locale-gen zh_CN,结果提示
"zh_CN.GB2312... localedef: unrecognized option '--magic=20031115' Try 'localedef --help' or 'localedef --usage' for more information.
failed
Generation complete."
结果是failed,locale-gen zh_CN.UTF-8也一样

5、在目标机上运行localedef -i zh_CN -f GB2312 zh_CN,提示"cannot open locale definition file 'i18n': No such file or directory',运行localedef -i zh_CN -f UTF-8 zh_CN.UTF-8,结果也一样,提示找不到"i18n"。但是我已经建立了/usr/share/i18n目录,SUPPORTED文件charmaps还有locales目录以及相关文件也都在里面啊~~~

各位前辈帮帮忙,指点一下吧,年终表现不好,老板就把你以前的好都忘了,过年都没大米了~~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-1-20 21:10:32 | 显示全部楼层
ps,不小心连续发了两帖,不好意思,不知道怎么删除,汗~~~
回复 支持 反对

使用道具 举报

发表于 2007-1-21 08:35:52 | 显示全部楼层
俺中文不好,locale 的问题,youbest 比较内行,可向他请教
回复 支持 反对

使用道具 举报

发表于 2007-1-21 19:48:44 | 显示全部楼层
一时很难判断,感觉应该是localedata没安装,但我觉得可能问题不在这里,你检查一下/etc/fonts/font.conf里面是否有simsun字体的设置,在X下一般字体问题都和fontconfig的设置关系比较大。
回复 支持 反对

使用道具 举报

发表于 2007-1-24 16:26:08 | 显示全部楼层
我也遇到了类似的问题。
有可能是因为你的LFS精简的太厉害了,连i18n都没了,还有localedata也没了?
用它上网,看看中文网页试试?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-1-25 00:56:28 | 显示全部楼层
Post by dreams
我也遇到了类似的问题。
有可能是因为你的LFS精简的太厉害了,连i18n都没了,还有localedata也没了?
用它上网,看看中文网页试试?


呵呵,没有浏览器~~~

但是用xfontsel可以看到中文(不知道是不是日文)

to youbest:没有/etc/fonts/fonts.conf文件...
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-1-27 19:13:02 | 显示全部楼层
又有了新状况,fonts.conf文件,对比了一下dubuntu下的fonts.conf没有什么问题~~~

中文字体显示方面有了一点突破,在目标机上运行软件的时候,通过xterm提供的终端运行软件,通过在可执行文件的后面添加 -font "-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*"就可以正常显示中文字体,我想这是不是说明我还可以通过配置某个环境变量就可以不加参数执行也正常显示中文?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表