Tiny6410嵌入式Qt开发环境的搭建

一、准备好交叉编译所需要的软件包

(1)arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz(交叉编译环境)
(2)qt-everywhere-opensource-src-4.8.5.tar.gz(Qt的源码)
(3)qt-creator-linux-x86_64-opensource-2.5.2.bin(我的系统是64位,所以选择x86_64)
(4)tslib-1.4.tar.gz(触摸屏校验工具)
安装包:
链接:https://pan.baidu.com/s/1h4dVleRGi8fV1lfMl2zoLg
提取码:j33n

二、环境的搭建

2.1系统环境

主机操作系统:ubuntu14.04
主机编译器:gcc4.8.4
交叉编译器:arm-linux-gcc-4.5.1

2.2安装交叉编译器

(1)首先以root用户登入

(2)复制arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz到tmp文件夹里

(3)解压tar xvzf arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz -C /
把arm-linux-gcc安装到/opt/FriendlyARM/toolschain/4.5.1目录

(4)配置下编译环境路径 在控制台下输入 gedit .bashrc,文件末尾加上

export PATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin

在这里插入图片描述
(5)输入:source .bashrc

(6)命令行输入arm-linux-gcc -v,出现以下界面安装成成功
在这里插入图片描述

2.3安装触摸屏校验工具

把tslib-1.4.tar.gz放到一个目录下,比如/opt目录下。接着执行命令如下:
#tar zxvf tslib-1.4.tar.gz

执行命令cd tslib,进入tslib当前目录,接着执行命令如下:
#./autogen.sh

然后接着执行配置命令:
#./configure --prefix=/usr/local/tslib --host=arm-linux ac_cv_func_malloc_0_nonnull=yes

最后执行编译命令和安装命令如下:
1.make
2.make install
如果以上步骤没错,则可以在/usr/local/tslib下出现我们需要的库文件,这些库文件我们移植时会用到。

编译期间出现的错误:./autogen.sh: 4: autoreconf: not found
解决办法:sudo apt-get install autoconf automake libtool

2.4 安装QtCreator

qt-creator-linux-x86_64-opensource-2.5.2.bin拷贝到Linux系统中,在终端中把路径切换到qt-creator-linux-x86_64-opensource-2.5.2.bin所在的路径。

运行命令:./qt-creator-linux-x86_64-opensource-2.5.2.bin 就会出现图形安装界面;下面的安装步骤就和我们在windows下安装软件差不多。

注意:下的版本要和你的操作系统相匹配,32位的系统下对应32位的应用程序;

2.5 编译Qt库源码

2.5.1解压

将源码qt-everywhere-opensource-src-4.8.5.tar.gz 进行解压,并复制两份到/usr/local目录下,并分别命名为qt-pc,qt-arm。
在这里插入图片描述

2.5.2 编译PC版

进入qt-pc目录,执行如下操作:
#./configure
#make
#make install

编译过程中出现的问题:出错:Basic XLibfunctionality test failed!
这个错误主要是因为,XLib库没有安装,所以在编译X11平台时,应该保证,
以下命令正确执行:sudo apt-get install libx11-dev libxext-dev libxtst-dev
注意:可以使用 make confclean 命令 把以前的配置信息清除掉,然后再重新配置。

2.5.3编译ARM版

进入qt-arm目录,执行如下操作:
#vim /usr/local/qt-arm/qt-everywhere-opensource-src-4.8.5/mkspecs/qws/linu x-arm-g++/ qmake.conf
在这里插入图片描述
命令行输入:
#./configure -prefix /usr/local/Trolltech/QtEmbedded-4.8.5-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-pch -no-separate-debug-info -nomake examples -nomake tools -nomake docs -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib
#make
#make install

安装完成后,在/usr/local/Trolltech目录中有两个个文件夹:Qt-4.8.5、
QtEmbedded-4.8.5-arm。

在这里插入图片描述
QtCreator编译前的配置
打开QtCreator ,工具---->选项—>构建和运行 进行设置,在Qt版本菜单下,手动设置选择qmake路径。

在这里插入图片描述
在这里插入图片描述
qmake路径前有感叹号
选择Tool Chains点击add添加GCC
在这里插入图片描述
构建项目
在这里插入图片描述
在这里插入图片描述
运行的时候
在这里插入图片描述
编译成功后,查看下文件是否是ARM格式的,用file来查看
在这里插入图片描述
用SD卡或者tftp把编译好的代码拷贝到Tiny6410板子中
#cp /sdcard/ARMTEST /bin
#chmod +x /bin/ARMTEST
#ARMTEST -qws
在这里插入图片描述
即可运行

错误区:
1、 在开发板运行时出现类似错误:error while loading shared libraries:
libts-0.0.so.0: cannot open shared object file: No such file or directory
在这里插入图片描述
安装QtEmbedded-4.8.5-arm目录下,把.so文件都拷贝到开发板的/lib文件下
在这里插入图片描述

2、 编译出错:cc1: fatal error: .pch/release-shared-emb-arm/QtGui: No such file or directory 解决方案:
在这里插入图片描述

3、由于老的arm-linux-gnu工具链不支持64位,因此需要安装32位库
sudo apt-get instatll lsb-core

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章