免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3205 | 回复: 0
打印 上一主题 下一主题

[桌面系统] 开发板中文乱码问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-06-25 10:01 |只看该作者 |倒序浏览
宿主机环境:vmware6.5(fedora 9中文)
          开发板:i.mx35(系统2.6.2


          宿主机上:locale命令:显示全是zh_CN.UTF-8,中文显示正常。
                         我曾试过改成zh_CN.GB2312,乱码,显示如下

         

          开发板上:在编译内核时,已选中支持cp936。在交叉编译好glibc后,移植到板子上文件包括:/usr/share/i18n,/usr/share/locale,/usr/bin/local,/usr/bin/localdef(如果漏了,请各位指明一下,谢谢)
                1、在插入U 盘时,用命令:mount -t vfat -o iocharset=cp936 /dev/sda1 /mnt/usb。可以看到U盘中中文文件名显示正确。
                2、曾在宿主机写了一简单程序,内容很简单:printf("测试\n")。通过交叉编译器编译后,在开发板上运行,打印出来的也是乱码。


我也曾尝试修改成zh_CN.UTF-8和zh_CN.GB2312,结果如图:


个人发现有两个异常:
1、在我用localedef命令时,必须加上参数--no-archive,否则报错:cannot map archive header:invalid argument
2、为什么中文能显示出一半?这是否与表示一个汉字所采取的字节数有关呢,如GB2312是两个字节表示,UTF-8用两个字节表示常用汉字,用三个字节表示不常用字符。

还有个问题:想弱弱问一句,除了字符集外,还有没有字体的说法在Linux表示中文的时候?

希望各位老大能帮帮忙
谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP