找回密码
 注册
搜索
热搜: 回贴
微赢网络技术论坛 门户 服务器 Linux/BSD 查看内容

redhat9.0下交叉编译arm

2009-12-20 13:19| 发布者: admin| 查看: 29| 评论: 0|原作者: 仙剑



redhat9.0下交叉编译arm&qtpoia2.2记录


时间:2007-4-24

新的项目就要开始了,是用linux下的qt开发,主板用的是freescale的iMX21板子,由于它们给的学习板子里边已经有qtopia2.1,出于学习和深入研究的目的。开始我对qt的学习过程:
1. 开发环境
HOST 环境:
系统:redhat9.0完全安装
交叉工具arm 2.9.53 TARGET环境
freescaleiMX21(arm9)
320*240屏外加触摸屏
软件:
1.qtopia-free-src-2.2.0.tar.gz
2.e2fsprogs-1.39.tar.gz
3.jpegsrc.v6b.tar.gz
4.libpng-1.2.14.tar.bz2
5.tslib-1.3.tar.bz2
6.zlib-1.2.3.tar.bz2
7.freetype-2.1.4.tar.bz2
说明:2-6以前已经交叉编译过,并且将相关的库文件和头文件分别放到了交叉编译器的
arm-linux/lib
arm-linux/include目录下面
工作目录为/home/nfs
2.交叉编译过程
2.1安装freetype-2.1.4.tar.bz2
解压后进入到解压后的目录,执行以下命令:
./configure --prefix=/usr
make
make install
2.2 解压qtopia-free-src-2.2.0.tar.gz
tar zxvf qtopia-free-src-2.2.0.tar.gz
2.3 得到本机运行版本uic 工具
下载地址:
http://vanille.de/tools/uic-qt2
改变权限:
chmod u rx uic-qt2
改名:
mv uic-qt2 uic
拷贝到qtopia-free-2.2.0/qt/bin中
cp uic /home/nfs/qtopia-free-2.2.0/qt/bin中
2.4 设置环境变量
export QPEDIR=/home/nfs/qtopia-free-2.2.0/qtopia
export QTDIR=/home/nfs/qtopia-free-2.2.0/qt2
export LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/lib
export TMAKEDIR=/home/nfs/qtopia-free-2.2.0/tmake
export TMAKEPATH=$TMAKEDIR/lib/qws/linux-arm-g
2.5 修改相关文件

1. qtopia-free-2.2.0/qtopia/mkspecs/qws/linux-arm-g /qmake.conf
将此行
QMAKE_LIBS_QT = -lqte
修改为
QMAKE_LIBS_QT = -lqte -lpng -lz -luuid -ljpeg
2.修改$QPEDIR/src/qt/qconfig-qpe.h文件,定义相应的宏,在最后加上
#define QT_QWS_IPAQ
#define QT_QWS_IPAQ_RAW
这样是为了让Qtopia自动支持触摸屏
3.修改qtopia-free-2.2.0/qt2/include/qvaluestack.h
将remove( this->fromLast() );改为this->remove( this->fromLast() );
4.qtopia-free-2.2.0/qtopia/src/3rdparty/plugins/codecs/libflash/
将其中的jpeglib.h改名为jpeglib.h.bak
5.qtopia-free-2.2.0/qtopia/src/libraries/qtopia/qdawg.cpp
将QDawgPrivate::~QDawgPrivate()改为~QDawgPrivate()

2.6 配置
准备配置文件:
cp $QPEDIR/src/qt/qconfig-qpe.h $QTDIR/src/tools
cd $QPEDIR/src/libraries/qtopia
cp custom-linux-ipaq-g .cpp custom-linux-arm-g .cpp
cp custom-linux-ipaq-g .h custom-linux-arm-g .h
建立安装目录:
mkdir /home/nfs/qtopia
配置:
echo 'yes'|./configure -qte "-embedded -xplatform linux-arm-g -qconfig qpe -no-qvfb -depths 16,24 -system-jpeg -system-libpng -system-zlib -gif -thread -no-xft -release -lpng -lz -luuid -ljpeg" -qpe '-xplatform linux-arm-g -edition pda -displaysize 320x240 -prefix=/home/nfs/qtopia'
2.7 make
2.8 make install
2.9 将qtopia拷贝至USB,mount到/mnt目录
2.10 设置环境变量并运行
export QTDIR=/mnt/qtopia
export QPEDIR=/mnt/qtopia
export QWS_MOUSE_PROTO="TPanel:/dev/h3600_tsraw"
export PATH=/mnt/qtopia/bin:$PATH
export LD_LIBRARY_PATH=/mnt/qtopia/lib
export QWS_KEYBOARD=TTY

说明:开发板上的库文件的版本不一致,可以将这些库文件拷贝到mnt/qtopia中,
先列举用得到的包:
[参考网站]
http://www.cublog.cn/u/27904/showart_263102.html
http://www.hzlitai.com.cn/bbs/dispbbs.asp?boardid=5&id=6456
http://www.arm9bbs.com/thread-335-1-1.html










最新评论

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-29 23:27 , Processed in 0.190649 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

返回顶部