ARM6410移植QtEmbedded.docx

上传人:b****2 文档编号:2131507 上传时间:2023-05-02 格式:DOCX 页数:15 大小:20.41KB
下载 相关 举报
ARM6410移植QtEmbedded.docx_第1页
第1页 / 共15页
ARM6410移植QtEmbedded.docx_第2页
第2页 / 共15页
ARM6410移植QtEmbedded.docx_第3页
第3页 / 共15页
ARM6410移植QtEmbedded.docx_第4页
第4页 / 共15页
ARM6410移植QtEmbedded.docx_第5页
第5页 / 共15页
ARM6410移植QtEmbedded.docx_第6页
第6页 / 共15页
ARM6410移植QtEmbedded.docx_第7页
第7页 / 共15页
ARM6410移植QtEmbedded.docx_第8页
第8页 / 共15页
ARM6410移植QtEmbedded.docx_第9页
第9页 / 共15页
ARM6410移植QtEmbedded.docx_第10页
第10页 / 共15页
ARM6410移植QtEmbedded.docx_第11页
第11页 / 共15页
ARM6410移植QtEmbedded.docx_第12页
第12页 / 共15页
ARM6410移植QtEmbedded.docx_第13页
第13页 / 共15页
ARM6410移植QtEmbedded.docx_第14页
第14页 / 共15页
ARM6410移植QtEmbedded.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

ARM6410移植QtEmbedded.docx

《ARM6410移植QtEmbedded.docx》由会员分享,可在线阅读,更多相关《ARM6410移植QtEmbedded.docx(15页珍藏版)》请在冰点文库上搜索。

ARM6410移植QtEmbedded.docx

ARM6410移植QtEmbedded

移植QtEmbedded-4.5.2tslib1.4到S3C2440收藏

开发环境

操作系统:

Vmware6.0+Ubuntu8.04。

交叉编译器:

arm-linux-gcc-4.3.2

目标板:

mini2440+NEC3.5寸屏

1、下载源码包:

在:

ftp:

//下载

qt-embedded-linux-opensource-src-4.5.2.tar.bz2

qt-x11-opensource-src-4.5.2.tar.bz2

在上下载tslib1.4.tar.gz

2、配置ubuntu8.04编译环境

安装g++:

sudoapt-getg++

安装编译X11用到的库:

sudoapt-getlibx11-devlibxext-dev

安装libxtst-dev:

sudoaptitudeinstalllibxtst-dev否则编译qvfb出错。

3、编译及安装qt-x11-opensource-src-4.5.2

qt-x11版本可以产生Qt开发工具,如designer、qvfb,嵌入式的开发有了qvfb,就可以不需要实际的开发

板,也可以开发Qt应程序。

tarxjvfqt-x11-opensource-src-4.5.2.tar.bz2

cdqt-x11-opensource-src-4.5.2

./configure

make

makeinstall

历经漫长的编译过程,默认安装在/usr/local/Trolltech/Qt-4.5.2下,编译完成后源程序不要删除,还有用。

4、编译配置QtEmbedded-4.5.2-x86版本

A、解压

root@hrixin-desktop:

/work/qte#tarxjvfqt-embedded-linux-opensource-src-4.5.2.tar.bz2

root@hrixin-desktop:

/work/qte#mvqt-embedded-linux-opensource-src-4.5.2qt-embedded-linux-opensource-src-4.5.2-x86

root@hrixin-desktop:

/work/qte#cdqt-embedded-linux-opensource-src-4.5.2-x86

B、配置编译:

./configure-prefix/usr/local/Trolltech/QtEmbedded-4.5.2-x86-embeddedx86-qvfb

root@hrixin-desktop:

/work/qte/qt-embedded-linux-opensource-src-4.5.2-x86#make

C、安装到/usr/local/Trolltech/QtEmbedded-4.5.2-x86目录下:

root@hrixin-desktop:

/work/qte/qt-embedded-linux-opensource-src-4.5.2-x86#makeinstall

D、建立脚本文件:

setenv_arm.sh,输入以下内容:

exportQTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/

exportPATH=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/bin/:

$PATH

exportLD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/lib/:

$LD_LIBRARY_PATH

E、编译x86版QT应用程序前,先执行此脚本文件:

root@hrixin-desktop:

/usr/local/Trolltech/QtEmbedded-4.5.2-x86#sourcesetenv-x86.sh

5、编译安装tslib1.4

A、安装编译过程需用到的程序

root@hrixin-desktop:

/home/hrixin#apt-getinstallautoconf(或autoconf2.13)

root@hrixin-desktop:

/home/hrixin#apt-getinstallautomake

root@hrixin-desktop:

/home/hrixin#apt-getinstalllibtool

B、配置编译

root@hrixin-desktop:

/work/qt#tarxzvftslib-1.4.tar.gz

root@hrixin-desktop:

/work/qt#cdtslib

生成./configure

root@hrixin-desktop:

/work/qt/tslib#sourceautogen.sh

root@hrixin-desktop:

/work/qt/tslib#exportac_cv_func_malloc_0_nonnull=yes

root@hrixin-desktop:

/work/qt/tslib#./configure--prefix=/usr/local/tslib/--host=arm-linuxac_cv_func_malloc_0_nonnull=yes

root@hrixin-desktop:

/work/qt/tslib#make

C、安装

root@hrixin-desktop:

/work/qt/tslib#makeinstall-strip//生成瘦身应用程序和库

打包

root@hrixin-desktop:

/usr/local#tarczvftslib.tar.gztslib

D、复制到NFS文件系统/usr/local目录下解压

root@hrixin-desktop:

/work/root_qtopia/usr/local#tarxzvftslib.tar.gz

E、设置环境变量,校准触摸屏。

在天开板终端建立脚本文件,并执行:

exportTSLIB_ROOT=/usr/local/tslib

exportTSLIB_TSDEVICE=/dev/input/event0

exportTSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

exportTSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

exportTSLIB_CALIBFILE=/etc/pointercal

exportTSLIB_FBDEVICE=/dev/fb0

exportQWS_MOUSE_PROTO=tslib:

/dev/input/event0

注意:

触摸屏的前提是你的触摸屏驱动已经写好,并加载进了内核.

你可以测试有没有加载触摸屏驱动,cat/dev/input/event0(这只是我的板子上的触摸屏),

点击触摸屏,看终端有无显示,若有则表明正确。

在开发板/usr/local/tslib/bin目录下执行校准触摸屏程序:

[root@FriendlyARMbin]#./ts_calibrate

可以运行此目录下的其他程序进行测试。

注:

/etc/ts.conf打开module_rawinput设置

#Uncommentifyouwishtousethelinuxinputlayereventinterface

module_rawinput

至此,触摸屏程序能顺利运行,接下来移植QtEmbedded-4.5.2,设置好环境变量。

6、编译安装QtEmbedded-4.5.2-arm版本

A、解压

root@hrixin-desktop:

/work/qte#tarxjvfqt-embedded-linux-opensource-src-4.5.2.tar.bz2

root@hrixin-desktop:

/work/qte#mvqt-embedded-linux-opensource-src-4.5.2qt-embedded-linux-opensource-src-4.5.2-arm

root@hrixin-desktop:

/work/qte#cdqt-embedded-linux-opensource-src-4.5.2-arm

B、配置编译:

./configure-prefix/usr/local/Trolltech/QtEmbedded-4.5.2-arm-embeddedarm\

-release-shared-fast-no-largefile-qt-sql-sqlite-no-qt3support-no-xmlpatterns-no-mmx-no-3dnow-no-sse-no-sse2-no-svg-no-webkit-qt-zlib-qt-gif\

-qt-libtiff-qt-libpng-qt-libmng-qt-libjpeg-makelibs-nomaketools-nomakeexamples-nomakedocs-nomakedemo-no-nis-no-cups-no-iconv-no-dbus\

-no-openssl-xplatformqws/linux-arm-g++-little-endian-qt-freetype-depths16,18-qt-gfx-linuxfb-no-gfx-transformed-no-gfx-multiscreen\

-no-gfx-vnc-no-gfx-qvfb-qt-kbd-usb-no-glib-qt-mouse-tslib-I/usr/local/tslib/include-L/usr/local/tslib/lib

注意这个目录要跟你的tslib安装目录相同!

root@hrixin-desktop:

/work/qte/qt-embedded-linux-opensource-src-4.5.2-arm#make

C、安装到/usr/local/Trolltech/QtEmbedded-4.5.2-arm目录下:

root@hrixin-desktop:

/work/qte/qt-embedded-linux-opensource-src-4.5.2-arm#makeinstall

D、打包编译安装好的QtEmbedded库文件:

root@hrixin-desktop:

/usr/local/Trolltech#tarczvfQtEmbedded-4.5.2-arm.tar.gzQtEmbedded-4.5.2-arm

E、建立脚本文件:

setenv_arm.sh,输入以下内容:

exportQTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.2-arm/

exportPATH=/usr/local/Trolltech/QtEmbedded-4.5.2-arm/bin/:

$PATH

exportLD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.2-arm/lib/:

$LD_LIBRARY_PATH

F、编译ARM版QT应用程序前,先执行此脚本文件:

root@hrixin-desktop:

/usr/local/Trolltech/QtEmbedded-4.5.2-arm#sourcesetenv-arm.sh

编译calculator

root@hrixin-desktop:

/work/qt/qt-embedded-linux-opensource-src-4.5.2-arm/examples/widgets/calculator#calculator.pro

root@hrixin-desktop:

/work/qt/qt-embedded-linux-opensource-src-4.5.2-arm/examples/widgets/calculator#make

7、在主机上建立NFS启动根文件系统,把编译好的库文件复制到相关目录下。

A、文件系统目录为:

/work/root_qtopia/,修改rcS

[root@FriendlyARM/]#vi/etc/init.d/rcS

#/bin/qtopia&

建立Trolltech目录:

root@hrixin-desktop:

/work/root_qtopia/usr/local#mdkirTrolltech

B、把打包好的库文件:

QtEmbedded-4.5.2-arm.tar.gz复制到/work/root_qtopia/usr/local/Trolltech目录下

root@hrixin-desktop:

/work/root_qtopia/usr/local/Trolltech#tarxzvfQtEmbedded-4.5.2-arm.tar.gz

root@hrixin-desktop:

/work/root_qtopia/usr/local/Trolltech#cdQtEmbedded-4.5.2-arm/

C、复制5-F中编译好的calculator可执行文件到此目录下:

root@hrixin-desktop:

/work/root_qtopia/usr/local/Trolltech/QtEmbedded-4.5.2-arm#cp/work/qt/qt-embedded-linux-opensource-src-4.5.2-arm/examples/widgets/calculator/calculator./

D、建立脚本文件

root@hrixin-desktop:

/work/root_qtopia/usr/local/Trolltech/QtEmbedded-4.5.2-arm#geditsetenv.sh

输入以下内容:

(把设置tslib环境变量的脚本文件内容,也添加进来)

#!

/bin/sh

exportTSLIB_ROOT=/usr/local/tslib

exportTSLIB_TSDEVICE=/dev/input/event0

exportTSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

exportTSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

exportTSLIB_CALIBFILE=/etc/pointercal

exportTSLIB_FBDEVICE=/dev/fb0

exportQWS_MOUSE_PROTO=Tslib:

/dev/input/event0

exportQTDIR=/usr/local/Trolltech/QtEmbedded-4.5.2-arm

exportQPEDIR=/usr/local/Trolltech/QtEmbedded-4.5.2-arm

exportLD_LIBRARY_PATH=$QTDIR/lib:

$TSLIB_ROOT/lib:

/usr/local/lib:

$LD_LIBRARY_PATH

E、至此,主机上的文件系统已经配置好,开板通过NFS挂载到此文件系统启动。

启动后,开发板串口终端执行刚才的脚本文件(通过NFS启动,执行脚本文件未成功),设置好环境变量。

检查环境变量是否成功:

[root@FriendlyARMQtEmbedded-4.5.2-arm]#echo$QTDIR

/usr/local/Trolltech/QtEmbedded-4.5.2-arm

成功!

如果没有输出,则失败。

同样的方法检查其他两个环境变量。

F、运行calculator

[root@FriendlyARMQtEmbedded-4.5.2-arm]#./calculator-qws&

From:

1.下载qt-embedded-linux-opensource-src-4.5.2.tar.gz和tslib-1.4.tar.gz

2.交叉编译

#cdtslib

#vido.sh

#!

/bin/sh

./configure--build=i386-linux--host=arm-linuxac_cv_func_malloc_0_nonnull=yesCC=/usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-gccCXX=/usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-g++--prefix=$PWD/build

#chmod755

#./do.sh

#make

#makeinstall

#cdqt-embedded-linux-opensource-src-4.5.2

#mkdirlibts

#cp(***tslib)/build/lib/libts*libts/

#cp(***tslib)/build/include/*libts/

修改mkspecs/qws/linux-armv6-g++/qmake.conf,加入下面几行设置qmake的FLAGS:

#qwduadded

QMAKE_INCDIR=(****)/qt-embedded-linux-opensource-src-4.5.2/libts

QMAKE_LIBDIR=(****)/qt-embedded-linux-opensource-src-4.5.2/libts

#vido.sh

#!

/bin/sh

./configure\

-opensource\

-prefix/***/***(installdir)\

-release\

-shared\

-no-qt3support\

-no-xmlpatterns\

-no-svg\

-no-webkit\

-qt-zlib\

-qt-gif\

-qt-libtiff\

-qt-libpng\

-qt-libmng\

-qt-libjpeg\

-makelibs\

-maketools\

-nomakeexamples\

-nomakedocs\

-nomakedemo\

-no-nis\

-no-cups\

-no-iconv\

-no-dbus\

-no-openssl\

-xplatformqws/linux-armv6-g++\

-embeddedarm\

-little-endian\

-qt-freetype\

-depths16\

-qt-gfx-linuxfb\

-no-gfx-transformed\

-no-gfx-multiscreen\

-no-gfx-vnc\

-no-gfx-qvfb\

-qt-kbd-tty\

-qt-kbd-usb\

-qt-mouse-tslib\

-qt-mouse-pc\

-no-glib

#chmod755do.sh

#./do.sh

#make

#makeinstall

在开发板上设置环境变量

#vi/usr/etc/rc.local

#!

/sh/bin

exportTSDIR=/usr/tslib

exportPATH=$TSDIR/bin:

$PATH

exportLD_LIBRARY_PATH=$TSDIR/lib:

$LD_LIBRARY_PATH

exportTSLIB_CONSOLEDEVICE=none

exportTSLIB_FBDEVICE=/dev/fb0

exportTSLIB_CALIBFILE=$TSDIR/etc/pointercal

exportTSLIB_CONFFILE=$TSDIR/etc/ts.conf

exportTSLIB_PLUGINDIR=$TSDIR/plugins

exportTSLIB_TSDEVICE=/dev/ts0

exportTSLIB_TSEVENTTYPE=H3600

exportQTDIR=/usr/qt

exportPATH=$QTDIR/bin:

$PATH

exportLD_LIBRARY_PATH=$QTDIR/lib:

$QTDIR/plugins/imageformats:

$LD_LIBRARY_PATH

exportQT_PLUGIN_PATH=$QTDIR/plugins/

exportQT_QWS_FONTDIR=$QTDIR/fonts

#exportQWS_MOUSE_PROTO=LinuxTP:

/dev/ts0

exportQWS_MOUSE_PROTO=Tslib:

/dev/ts0

#mkdir/usr/qt

把之前编译安装的QT库和程序(qt的install目录)copy到开发板的/usr/qt目录下,具体如下:

binfontslibplugins

bin下放入mousecalibration

fonts下放入*qpf字体(字体比较大,占用空间,可以只复制QT自己转化过的qpf字体)

lib下放入libQtCore.so.4.5.2,libQtGui.so.4.5.2,libQtNetwork.so.4.5.2,libQtSql.so.4.5.2

然后链接下

libQtCore.so.4->libQtCore.so.4.5.2

libQtGui.so.4->libQtGui.so.4.5.2

libQtNetwork.so.4->libQtNetwork.so.4.5.2

libQtSql.so.4->libQtSql.so.4.5.2

#mkdir/usr/tslib

再把之前编译安装的Tslib库和程序(tslib的bulid目录)copy到开发板的/usr/tslib目录下,具体如下:

binetcincludelibplugins

设置完毕

qt的库比较大,可以arm-linux-strip下

#sh/usr/etc/rc.local

#t

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2