Qt开发环境的建立 Posted on 2009-11-07 21:39 feisky 阅读(2962) 评论(4) 编辑 收藏

开发模式: 在宿主机Federa上通过qvfb来模拟帧缓冲 开发完毕后使用qt-embedded重新编译后下载程序到ARM上运行(ARM上需要安装Qt) 开发所需软件:
qtopia-free-1.7.0.tar.gz
qt-x11-2.3.2.tar.gz
tmake-1.11.tar.gz
qt-embedded-2.3.7.tar.gz 配置时设置qvfb: ./configure -qconfig -qvfb -depths 4,8,16,32 程序的运行方式: ./qvfb & ./canvas –qws (一般调试时采用这种方式) 注意:QT默认显示窗口大小为240x320像素,指定其他窗口大小:qvfb -width 640 -height 480 & 如果需要将自己开发的安装在Qtopia中,则需要以下的步骤:
1. 在/x86-qtopia目录下建立文件夹hello,并编写相应的程序,执行: make 编译完后程序生成在$QPEDIR/bin下 2. 设置配置文件hello.desktop并复制配置文件到$PEDIR/apps/Applications下: 配置文件内容: [Desktop Entry] Comment=An Hello Demo. Exec=hello Icon=Hello Type=Application Name=Hello 执行命令: cp hello.desktop $PEDIR/apps/Applications 3. 执行程序: qvfb & qpe 4. 修改图标: 设计32*32的PNG图片放到<Qtopia>/pics/inline目录下,然后用qembed转换 qembed -images $QPEIDR/pics/inline/*.* > $QPEIDR/src/librabies/qtopia/inlinepics_p.h宿主机Qt的安装 *********************************************************************************************** 注:以下安装步骤在Redhat 9系统下测试通过,安装步骤参考了MagicARM2410平台实验手册。 在/zylinux下建立目录 x86-qtopia 所有的软件包都复制到该目录下 *********************************************************************************************** 1.安装tmake tar xzvf tmake-1.11.tar.gz export TMAKEDIR=/zylinux/x86-qtopia/tmake-1.11 export TMAKEPATH=/zylinux/x86-qtopia/tmake-1.11/lib/qws/linux-x86-g++ export PATH=$PATH:/zylinux/x86-qtopia/tmake-1.11/bin/ Tmake配置文件:Tmake.conf Tmake的模板:app.t 用于生成应用程序的Makefile lib.t 用于生成库文件的Makefile subdirs.t 用于创建编译子目录中程序的Makefile 2.安装Qt/X11 tar xzvf qt-x11-2.3.2.tar.gz cd qt-2.3.2/ export QTDIR=$PWD export PATH=$QTDIR/bin:$PATH export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH ./configure -static -no-xft -no-opengl make make -C tools/qvfb mv tools/qvfb/qvfb bin export QTEDIR=$QTDIR cp bin/uic $QTEDIR/bin cd .. Qt的配置比较复杂 详细查看./configure --help make -C tools/designer 图形设计器designer 3.解压Qtopia tar xzvf qtopia-free-1.7.0.tar.gz export QPEDIR=$PWD/qtopia 4.安装Qt/Embeded 这里使用了QPE的配置文件 tar xzvf qt-embedded-2.3.7.tar.gz cd qt-2.3.7 export QTDIR=$PWD export QTEDIR=$QTDIR export PATH=$QTDIR/bin:$PATH export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH cp $QPEDIR/src/qt/qconfig-qpe.h src/tools (echo yes; echo yes)|./configure -platform linux-x86-g++ -qconfig qpe -qvfb -depths 4,8,16,32 make sub-src //make -C src cd .. 5.安装Qtopia cd qtopia-1.7.0 export QTDIR=$QTEDIR export QPEDIR=$PWD export PATH=$QTEDIR/bin:$PATH cd src ./configure -platform linux-x86-g++ make cd ../.. *********************************************************************************************** *********************************************************************************************** 配置脚本(以上5步的完整安装,所有需要文件放在/zylinux/x86-qtopia下,执行./build): #!/bin/bash echo remove old dirs rm -rf tmake rm -rf qt rm -rf qt-x11 rm -rf qtopia echo Unpack all packages tar xzvf tmake-1.11.tar.gz tar xzvf qt-embedded-2.3.7.tar.gz tar xzvf qt-x11-2.3.2.tar.gz tar xzvf qtopia-free-1.7.0.tar.gz echo rename mv tmake-1.11 tmake mv qtopia-free-1.7.0 qtopia mv qt-2.3.7 qt echo Start Install Qt-X11 cd qt-2.3.2 export QTDIR=$PWD echo yes|./configure -static -no-xft -no-opengl -no-sm make -C src/moc cp src/moc/moc bin make -C src make -C tools/designer make -C tools/qvfb cp tools/qvfb/qvfb bin strip bin/uic bin/moc bin/designer bin/qvfb #cp bin/uic $QTEDIR/bin cp bin/?* ../qt/bin cd .. #cp $QTDIR/bin/?* qt/bin mv qt-2.3.2 qt-x11 echo Start Setting env-var export QTDIR=$PWD/qt export QTEDIR=$QTDIR export QPEDIR=$PWD/qtopia export TMAKEDIR=$PWD/tmake export TMAKEPATH=$TMAKEDIR/lib/qws/linux-generic-g++ export PATH=$QTDIR/bin:$QPEDIR/bin:$TMAKEDIR/bin:$PATH export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH echo Start build Qt/Embedded cd qt make clean cp $QPEDIR/src/qt/qconfig-qpe.h src/tools (echo yes; echo yes)|./configure -platform linux-generic-g++ -qconfig qpe -qvfb -depths 16,24,32 make -C src cd .. echo Start Build Qtopia cd qtopia/src ./configure -platform linux-generic-g++ make echo OK 这样安装完后的安置路径为: