关于Qt的移植,以前移植过一次S3C2440的.现在这平台是AT91SAM9X35的.不过移植过程都一样,只不过遇到了以前没遇到的事情,在此记录下来
平台:AT91SAM9X35
环境:linux-2.6.39
移植Qt版本:4.6.4
交叉编译器:arm-linux-gcc
移植过程遇到的问题:运行Qt程序,点击屏幕没有反应.鼠标也没动.
(1)问题分析:交叉编译器头文件EV_VERSION宏与所移植的内核版本的EV_VERSION宏不一样.
解决途径:
查看下EV_VERSION的定义.
交叉编译器中的位置:/opt/buildroot-2011.11/arm926t/usr/arm-unknown-linux-uclibcgnueabi/sysroot/usr/include/linux/input.h 这是我交叉编译器中该文件的位置
linux内核中的位置:include/linux/input.h
我这里两个都是 #define EV_VERSION 0x010001. 也有的是0x010000 只要两个文件下的一样就可以. 如果不一样,就去把内核里的改成匹配交叉编译器里的.
该问题产生的现象:
如果在运行Qt程序之前,运行tslib库进行校正的话, 会出现selected device is not a touchscreen I understand的错误.出现这个错误信息的原因和
调试方法下篇再讲.
(2)问题分析:环境变量设置不正确
解决途径<