半坡起步如何防止溜车:Qt4.7.0移植到mini2440

来源:百度文库 编辑:偶看新闻 时间:2024/05/05 07:10:54
Qt4.7.0移植到mini2440 

1.     安装交叉编译器。利用友善之臂自带的交叉编译器。

将arm-linux-gcc-4.3.2.tgz 放在 /root下,执行如下操作

#cd /root
#tar xvzf arm-linux-gcc-4.3.2.tgz –C /
#gedit /root/.bashrc

在bashrc最后一行添加 export PATH=$PATH:/usr/local/arm/4.3.2/bin

#source /root/.bashrc

#arm-linux-gcc -v

查看交叉编译器版本为4.3.2

2.     编辑tslib对触摸屏的支持

将tslib1.4.tar.gz 放在/root 下,解压并编译:

# cd /root
# tar zxvf tslib1.4.tar.gz
# cd tslib
# ./autogen.sh
# ./configure --prefix=/usr/local/tslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes
# make
# make install

3.     配置QtE4.7.0
将qt-everywhere-opensource-src-4.7.0.tar.gz压缩包放在/opt下,解压:

#cd /opt

#tar zxvf qt-everywhere-opensource-src-4.7.0.tar.gz

#mv qt-everywhere-opensource-src-4.7.0 qt-4.7.0-arm

#cd qt-4.7.0-arm

3.1制作一个配置脚本

#gedit autoconfig.sh
编辑文件如下:


#!/bin/bash

./configure \
-prefix /usr/local/Trolltech/QtEmbedded-4.7.0-arm \
-opensource \
-confirm-license \
-release -shared \
-embedded arm \
-xplatform qws/linux-arm-g++ \
-depths 16,18,24 \
-fast \
-optimized-qmake \
-pch \
-qt-sql-sqlite \
-qt-libjpeg \
-qt-zlib \
-qt-libpng \
-qt-freetype \
-little-endian -host-little-endian \
-no-qt3support \
-no-libtiff -no-libmng \
-no-opengl \
-no-mmx -no-sse -no-sse2 \
-no-3dnow \
-no-openssl \
-no-webkit \
-no-qvfb \
-no-phonon \
-no-nis \
-no-opengl \
-no-cups \
-no-glib \
-no-xcursor -no-xfixes -no-xrandr -no-xrender \
-no-separate-debug-info \
-nomake examples -nomake tools -nomake docs \
-qt-mouse-tslib
-I/usr/local/tslib/include \
-L/usr/local/tslib/lib

exit


3.2生成Makefile文件并编译安装

#chmod 755 autoconfig.sh
#./autoconfig.sh
#gmake
#gmake install


3.3 移植到mini2440
安装完成后 将/usr/local/Trolltech/QtEmbedded-4.7.0-arm/lib/fonts中的字体全部删除 将 wenquanyi_120_50.qpf字体复制到fonts下:

#rm –rf /usr/local/Trolltech/QtEmbedded-4.7.0-arm/lib/fonts/*

#cp wenquanyi_120_50.qpf /usr/local/Trolltech/QtEmbedded-4.7.0-arm/lib/fonts/

3.4 制作开发板文件系统

将root_qtopia-20100108.tar.gz 和 mkyaffs2image.tgz放在/root下。删除qtopia图形界面系统,删除root文件夹下占存储较大的文件。复制/usr/local/Trolltech/QtEmbedded-4.7.0-arm/lib 文件夹到 /root/root_qtopia/ usr/local/Trolltech/QtEmbedded-4.7.0-arm, 复制 /usr/local/tslib下所有内容到 /root/root_qtopia/usr/local/,修改触摸屏配置文件 ts.conf, 修改环境变量,修改自启动文件 /root/root_qtopia/etc/init.d/rcS。最后将mkyaffs2image 工具生成文件系统镜像。

#cd /root
#tar zxvf root_qtopia-20100108.tar.gz
#tar zxvf mkyaffs2image.tgz
#cd root_qtopia
#rm –rf opt/Qtopia
#rm –rf root/Documents/*
#mkdir -p usr/local/Trolltech/QtEmbedded-4.7.0-arm
#cp –r /usr/local/Trolltech/QtEmbedded-4.7.0-arm/lib usr/local/Trolltech/QtEmbedded-4.7.0-arm
#cp –r /usr/local/tslib/* usr/local/
#gedit usr/local/etc/ts.conf
#gedit etc/profile
#gedit etc/init.d/rcS
#cd /root
#mkyaffs2image root_qtopia root_qt-4.7.0.img
usr/local/etc/ts.conf: 取消注释 module_raw input

etc/profile:在最后添加

export QTDIR=/usr/local/Trolltech/QtEmbedded-4.7.0-arm
export T_ROOT=/usr/local        
export PATH=$QTDIR/bin:$PATH
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_PLUGINDIR=$T_ROOT/lib/ts
export TSLIB_CONFFILE=$T_ROOT/etc/ts.conf
export TSLIB_CALIBFILE=/etc/pointercal
export QWS_MOUSE_PROTO=Tslib:/dev/input/event0
export LD_LIBRARY_PATH=$T_ROOT/lib:$QTDIR/lib

etc/init.d/rcS:

删除:

/bin/qtopia &

echo "                                  " > /dev/tty1

echo "Starting Qtopia, please waiting..." > /dev/tty1

添加:

source /etc/profile

echo "                           " > /dev/tty1

echo "Starting touch calibrate " > /dev/tty1

echo "                           " > /dev/tty1

sleep 1

/usr/local/bin/ts_calibrate &


3.5 下载内核,文件系统到mini2440

linux-2.6.32.img

root_qt-4.7.0.img
至此Qt4.7.0移植完成..