买了块立宇泰的ARMSYS2440开发板,板子提供的qt开发包是qt-embedded-2.3.7 qtopia-free-1.7.0 qt-x11-2.3.2,用这个版本的qt来写程序和不习惯,因为我一直都是在用qt-4.2.2在写程序,所以决定升级qt,到Trolltech的网站上看,最新的版本是qtopia-core-opensource-src-4.3.3,于是将其下载下来,解压到/root,形成/root/qtopia-core-opensource-src-4.3.3目录,1、在中qtopia-core-opensource-src-4.3.3\src\gui\embedded\qmouselinuxtp_qws.h加入#define QT_QWS_IPAQ#define QT_QWS_IPAQ_RAW2. 并在qmouselinuxtp_qws.cpp里把/dev/h3600_ts替换为自己板子的设备文件,我的板子的设备为/dev/h3600_tsraw,正好与qmouselinuxtp_qws.cpp中使用的设备中一致,就不用改了。注意步骤2中如果只定义了#define QT_QWS_IPAQ则使用的是/dev/h3600_ts,如果两个都定义了则使用的是/dev/h3600_tsraw3、新建一个专门用于编译的文件夹(为什这样做??^_^, 呵呵,直接在qtopia-core-opensource-src-4.3.3的目录下编译会包警告或者错误哦)#makedir build4、配置#cd build#../qtopia-core-opensource-src-4.3.3/configure -release -no-qvfb -xplatform qws/linux-arm-g -embedded arm -no-stl -plugin-sql-sqlite -no-qt3support -no-nis -no-cups -no-iconv -no-qdbus -no-freetype -depths 4,8,16,32 -qt-mouse-linuxtp5、编译#gmake6、安装#gmake installqtopia-core-opensource-src-4.3.3将被安装到/usr/local/Trolltech/QtopiaCore-4.3.3-arm7、测试将/usr/local/Trolltech/QtopiaCore-4.3.3-arm全部拷到开发板的NFS启动目录下并形成nfs-share-dir/usr/local/Trolltech/QtopiaCore-4.3.3-arm路径。我的开发板的NFS启动目录为armsys2440/root,所以我最终形成的目录是armsys2440/root/usr/local/Trolltech/QtopiaCore-4.3.3-arm开发板从使用NFS文件系统启动,就可以看到在开发板的/usr/local/Trolltech/QtopiaCore-4.3.3-arm的东西了。在开发板上设置环境变量 #export set HOME=/root#export set QTDIR=/usr/local/Trolltech/QtopiaCore-4.3.3-arm#export set QPEDIR=/usr/local/Trolltech/QtopiaCore-4.3.3-arm#export set QWS_KEYBOARD="USB:/dev/input/event1"#export set QWS_MOUSE_PROTO="LinuxTP:/dev/h3600_tsraw"#export set PATH=$QPEDIR/bin:$PATH#export set LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/lib#cd /usr/local/Trolltech/QtopiaCore-4.3.3-arm/examples/mainwindows/application#./application -qws可以看到触摸屏上出现了一个窗口,触摸屏也能正常工作了(因为我的触摸屏已经用开发板自带的程序校正过了),但是却有一个鼠标指针,看起来很不舒服,有人知道怎样隐藏鼠标指针吗??能不能给我说下。 2008:05:03添加 经过实验发现鼠标指针可以通过QApplication类的setOverrideCursor(const QCursor &)方法来实现隐藏鼠标指针的目的,具体代码如下:...#include ...int main(int argc, char *argv[]){QApplication app(argc, argv);app.setOverrideCursor(QCursor(Qt::BlankCursor));...} 注意:在步骤7中出现了无法打开libQtGui.so.4之类的错误的话请自己创建一个如连接就是了,如果是提示无法打开共享库,而有没说到底是那个库不能被打开的话,多半是gcc的库不齐,把交叉编译器的库全部考到lib下,或者在PC机上用arm-linux-string来看你缺的是什么库。 更多文章请点击查看:http://www.hzlitai.com.cn/article/ARM9-article/1-16.html

评论