QT交叉编译如何在ARM的linux工业平板电脑显示中文字体
很多QT编程爱好者或许都经历过这个烦恼,使用基于虚拟机linux(ubuntu等系统)平台进行QT编程的时候,系统编程显示中文完全没问题,但是当需要移植到基于ARM平台的开发板或者linux工业平板电脑的时候,使用交叉编译器编译之后的二进制文件下载到下位机,中文不显示,或者乱码。现在我用自己的Linux工业平板电脑开发做一个简单的显示中文的QT交叉编程案例。扬创科技的工业平板电脑(EPC-A70-L)的Linux 内核版本是2.6.32;文件系统集成了QT4.7.3,方便用户开发带有界面的应用程序,交叉编译工具是:arm-2009q3.tar.bz2。
虚拟机下载链接地址(各种交叉编译环境已经建立好,可以直接开发使用):http://share.
注意:QT4.7.3 可以通过QT Creator 平台直接编程,编译,非常方便。
另外先确定虚拟机ubuntu系统已经安装了交叉编译环境,可以在终端用命令:arm-linux-gcc -v 如果显示如下图所示,表明交叉编译器已经安装成功。
打开QT Creator,随便建立一个QT Ui工程,在 widget.ui中随便放入几个label标签,一个显示英文的,1个显示中文的,再加一个Push button,输入“刘德华”中文。
然后再在main.cpp的主程序主函数里面加入设置添加字体库的函数代码如下:
OK,然后进行编译器选择,我们选择交叉编译器(基于下位机linux的ARM工业平板电脑),打开Tools->Options…
编译完成之后,生成了一个可执行文件hanyu,把这个可执行文件通过ftp指令放到下位机linux工业平板电脑里面去。下位机默认IP 地址为192.168.1.253,用网线连接下位机,通过PC 机ping 此板,看是否能ping 通,如果可以继续下一步,输入终端命令:ftp 192.168.1.253,出现成功如下
Name直接输入root即可登录了。登录之后输入:put hanyu把文件拷贝进去,再ls查看可以看到已经拷进去了。
退出ftp(用quit),然后用telnet 192.168.1.253远程登录ARM工业平板电脑系统,登录用户名同样是root,然后可以用终端命令操作了,cd home/ftp 可以看到 hanyu可执行文件了,这边还要更改文件权限,chmod 777 hanyu ,OK,然后 输入执行命令 ./hanyu -qws 截图如下:
ARM的linux工业平板电脑就显示了QT的编程界面如下: