如题,编译移植第一个程序helloworld出现了些问题,望各位大侠帮忙分析解决一下,现将具体的操作过程列在下面:
说明,我用的板子是友善之臂mini2440,参考欧文盛编著的《ARM嵌入式Linux应用实例开发》这本书
1.下载qtopia-core-opensource-src-4.3.0.tar.gz ,然后解压编译arm版本的Qtopia Core
(不知道用这个编译出来的程序能否在他给的Qtopia2.2.0上运行不?)
输入:
- ./configure -embedded arm -xplatform qws/linux-arm-gcc++ -no-qt3support -qt-mouse-linuxtp
- make
- make install
默认是装在/usr/local/Trolltech/QtopiaCore-4.3.0-arm目录下,把这个目录加到系统PATH上。
2.编helloworld程序:
- #include <QApplication>
- #include <QLabel>
-
- int main(int argc, char *argv[])
- {
- QApplication app(argc, argv);
-
- QLabel hello("Hello Qtopia!");
-
- hello.show();
- return app.exec();
- }
3.交叉编译helloworld:
生成helloworld程序,然后把它拷贝到root_qtopia根文件系统的目录下,同时把/usr/local/Trolltech/QtopiaCore-4.3.0-arm/lib拷贝到root_qtopia根文件系统的目录下的/usr/local/Trolltech/QtopiaCore-4.3.0-arm目录下。
4.用NFS方式启动板子后,
- export LD_LIBRARY_PATH=/usr/local/Trolltech/QtopiaCore-4.3.0-arm/lib:$LD_LIBRARY_PATH
- ./helloworld
提示:QWSDisplay::Data::init: Invalid argument
运行不起来,换成
也不行,没有在板子上出现helloworld界面,提示:Segmentation fault
好像Qtopia死掉了,自动重启,但启动不起来....只能手动复位了
到底是怎么回事?按照《ARM嵌入式Linux应用实例开发》这本书上说的因该可以的呀!!
麻烦个位指点
或者说,编译用QtopiaCore编译的程序能否在Qtopia上运行?
好像系统运行的那个Qtopia使用Qt2编译的
不行的话我应该用什么编译那个helloworld程序,才能拿到板子上运行?
谢谢各位,帮帮忙