-
下载Qt集成开发环境
http://qt.nokia.com/downloads/sdk-linux-x11-32bit-cpp-offline
执行一下命令安装:
chmod u+x Qt_SDK_Lin32_offline_v1_2_en.run
./Qt_SDK_Lin32_offline_v1_2_en.run
配置集成
- 开发环境
新建工程,然后:
最后可以用file 命令查看文件属性
将文件拷贝到rootfs目录下:
执行:./books
就可以运行。
-
修改启动文件让开机就运行改文件,在rootf/etc/init.d/rcS文件中添加以下内容:
if [ -f "$TSLIB_CALIBFILE" ];
then
books -qws&
else
ts_calibrate
-
运行应用程序常见文件及错误分析:
-
Cannot create semaphore /tmp/qtembedded-root/QtEmbedded-0
这是说明系统禁止了锁,可以在内核配置的第一个 generated配置里面找到:
[*] System V IPC
选上它,重新编译,再次烧入内核
-
Illegal instruction
库添加错误,一定要正确的添加交叉编译器的库和qt-everywhere-opensource-src-4.8.1编译生成的库
- Segmentation fault
编译应用程序的编译器不对,推荐从内核到文件系统都用同一个交叉编译器,经验证
arm-linux-gcc-4.4.1这个编译器稳定性不错
还有很多问题没有解决:
-
本来想搞个opia的,比如Qt Extended,其实就是Qtopia.我搞的时候才发现:
Qt Extended是由Nokia的子公司Qt Software(前称Trolltech)所开发。,网上有很多源码可以都可以下载,但是大多数都是别人改过的。飞凌的提供的源码也被他改的乱七八糟,我死都编译不过去,既然连源码都找不到,我移植就没有办法下手了。
- 还有一个交叉编译器的库的问题。仔细一点你会发现我用的arm-linux-gcc-4.4.1里面有好的的lib还有好的名字是重复的。大家可以看看这篇文章对交叉编译器的理解http://wenku.baidu.com/view/45f3b6f29e31433239689382.html
-
Cannot create semaphore /tmp/qtembedded-root/QtEmbedded-0