您的位置:首页 > 编程语言 > Qt开发

Qt4.7.2的移植

2014-08-01 06:29 483 查看
    基本是按照http://download.csdn.net/detail/leo115/4079107#comment这篇文章来做的,但是也还是遇到了一些问题需要自己百度解决。总结一下:
    1、在配置tslib1.4时,由于会出现本机所使用的交叉编译工具名称并不是“arm-linux-gcc”,因此在解压tslib1.4后,在进入解压后生成的文件夹中时,要先申明一下所使用的交叉编译工具的绝对地址。我的就是:

export CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++

(这两行分别直接敲在命令行就可以)。这样,tslib1.4编译make后生成的文件才是可以运行在ARM上的。进行完以上工作之后,你要进入/usr/local/tslib/bin目录用file命令验证一下:file+要验证的文件名。比如要验证ts_calibrate,即file ts_calibrate。注意如果文件信息里,ELF文件信息后面有ARM这个词,说明你所使用的是交叉编译器;如果是80386,说明,你用的编译器不是交叉编译器,而是系统的gcc,g++。(具体详见:http://www.linuxidc.com/Linux/2011-06/37283.htm

    2、在configure的脚本文件myconfig中

-no-separate-debug-info /vi
这一行最后不应该有vi,即应改为
-no-separate-debug-info /


    3、在“搭建开发环境中”的“3.配置ARM版本Qte”中,运行自己编写的脚本文件myconfig若出现The tslib functionality test failed!   You might need to modify the include and library search paths by editing QMAKE_INCDIR and QMAKE_LIBDIR in /usr/local/qt4.7.2/arm/qt-embedded-linux-opensource-src-4.7.2/mkspecs/qws/linux-arm-g++.的错误,则需要进入上述目录,修改其中的qmake.conf,向其中添加

QMAKE_INCDIR = /usr/local/tslib/include
QMAKE_LIBDIR = /usr/local/tslib/lib

这两句话,并且将其中的交叉编译器全部改为“绝对路径+本机交叉编译器名称”。再执行myconfig脚本即可。(具体详见:http://www.linuxidc.com/Linux/2011-06/37283.htm

    4、在将库文件都拷贝到ARM板中并且设置好环境变量时,./HelloWorld -qws时会出现./helloword: /lib/libc.so.6: version `GLIBC_2.9' not found (required by /usr/local/qt4.7.1/lib/libQtGui.so.4)的错误。此时可以输入

cd /usr/lib
strings libc.so.6 | grep GLIBC
来查看GLIBC_2.9是否在其中,如果不在,说明是库的版本与编译器版本不一致,需要把arm-linux-gcc编译器的库文件拷贝到板子上。PC端:
cp /usr/local/arm/4.4.3/arm-none-linux-gnueabi/lib/libc-2.9.so ./
在ARM端,将上述的libc-2.9.so拷贝至新建目录/usr/lib/下,建立“软连接”:
cd /lib/
ln -sf /usr/lib/libc-2.9.so libc.so.6
此时的ln命令必须加入选项“f”,否则会报“libc.so.6”
File Exists的错误导致无法建立软连接。(具体详见:http://blog.csdn.net/glorin/article/details/6527598

    5、此时就可以运行起来程序了,但是发现触摸屏上只显示箭头,触笔在触摸屏上移动时箭头毫无反应,这是要注意在修改环境变量/etc/profile时一定要加上

export QWS_MOUSE_PROTO='TSLIB:/dev/input/event0'
这句话,然后source /etc/profile,否则触摸屏不会有反应的。

    6、运行程序时,发现程序显示的字体很小,看不清。加上 -font unifont 字体就不那么小了,比如:

./text -qws -font unifont
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息