微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > QTE及QPE在ARM板上的移植

QTE及QPE在ARM板上的移植

时间:12-08 来源:互联网 点击:
  所需软件工具包:

  tmake -1.11.tar.gz(tmake-1.13)

  qt-embedded-2.3.7.tar.gz

  qtopia-free-1.7.0.tar.gz

  qt-x11-free-2.3.2

  (注意:qt/x11版本必须要比qte的版本要老)

  利用的交叉编译工具为cross-2.95.3

  交叉编译环境的建立

  1.建立tmake工具包

  在host 上的/home/下建立

  # tar –xzf tmake-1.11.tar.gz

  2.建立qt-x11-free-2.3.2得到uic和designer工具

  # cd /home/

  # tar –xzf qt-x11-free-2.3.2.tar.gz

  # export QTDIR=/home/qt-2.3.2

  # export PATH=/usr/local/ARM/2.95.3/bin:$QTDIR/bin:$PATH

  #./configure –no-opengl

  # make make –c tools/qvfb

  # mv tools/qvfb/qvfb bin

  # cd ..

  3.交叉编译基于ARM架构的QTE库

  # mkdir /home/arm

  # cd /home/arm

  把qt-embedded 2.3.7.tar.gz压缩包放到/home/arm目录下

  # tar –xzf qt-embedded-2.3.7.tar.gz

  # cd qt-2.3.7

  # export PATH=/usr/local/arm/2.95.3/bin:$PATH

  # export QTDIR=$PWD

  # export QTEDIR=$QTDIR

  将qtopia-free-1.7.0下的qconfig-qpe.h CP到/home/arm/qt-2.3.7/src/tools下面(注:如果不用到QPE1.7.0可以不CP,另外在这里你可以根据你的需要来裁剪QTE2.3.7的库,#define 你需要的类,形成一个qconfig-xxx.h自定义配置文件就行,具体类的作用可以通过查找qt的说明文档。如果需要支持触摸屏必须要加上#define QT_QWS_IPAQ的内容。)

  # ./configure –xplatform. linux-arm-g++ -shared –realse –qconfig xxx –qvfb –depths 4,8,16,32

  将qt/x11下的bin下的uic工具CP到QTE2.3.7的bin下。

  # make

  形成了基于ARM架构的QTE2.3.7库。

  4.利用ARM架构的QTE2.3.7库交叉编译qtopia-free-1.7.0

  由于编译QPE1.7.0需要用到jpeg.so.*和luuid.so.*等库文件,所以在编译QPE1.7.0前必须要先编译的e2fsprogs-1.35.tar.gz,jpegsrc.v6b.tar.gz这两个相关的库。

  #mkdir /home/arm/qt-2.3.7/include/uuid

  将uuid.h CP到qt-2.3.7/include/uuid下,并将jpeg.so.*和luuid.so.*CP到qt-2.3.7/lib下

  #export QTEDIR=/home/arm/qt-2.3.7

  #export QTEDIR=/home/arm/qt-2.3.7

  #export QPEDIR=/home/arm/qtopia-free-1.7.0

  #export LD_LIBRARY_PATH=/home/tmake-1.11/lib/qws/linux-arm-g++

  #export PATH=/home/tmake-1.11/bin:$PATH

  #./configure –platform. linux-arm-g++

  分别进入

  src/setting src/tools src/games src/application src/3rdparty/applications

  将这些目录下面所有Makefile里面的-lm 改成-lm –luuid –luuid

  #make

  以上是整个编译过程。

  5.建立新的根文件系统cramfs

  将板上原有的根文件目录mount上并复制

  #mkdir /mnt/cram

  #mount –t cramfs YL2410_camare_demo.cramfs /mnt/cram –o loop

  #mkdir /usr/temp

  #cp –ra /mnt/cram/ /usr/temp/

  (注:CP不能实现文件符号链接的复制,所以必须要人手用ln指令重新建立相应的符号链接)

  将QTE2.3.7下的lib和QPE1.7.0下的lib及bin目录复制到temp的相应位置,如改动了其路径,必须将.bashrc里的环境变量进行改写,并查看temp/cram/usr/etc/rc.local文件,并作出相应的改动。

  把利用QTE2.3.7库编译的程序放到QPE1.7.0下的bin下并利用mkcramfs工具生成新的根文件系统

  #mkcramfs cram cram.cramfs

  将新生成的根文件目录系统烧写到板中,重启运行便可以在触摸屏上见到自己制作的QPE环境

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top