技术强人 发表于 2016-8-3 09:39:53

飞凌QT搭建环境中的心得


目前飞凌QT的环境搭建说起来挺简单的,就是交叉编译器、tslib移植、qt的移植和安装qtcreator。以下是以335X系列的板子为参考说明。
1.交叉编译器的安装与配置
交叉编译器的按照其实就是把飞凌提供的压缩包解压到相应的文件夹下。


红线标注的文件目录一定要一致,要不然的话交叉编译器环境配置会不成功的,而且在运行arm-linux-gcc -v的时候也不会成功的。会提示找不到此编译器。
还有就是飞凌提供的arm-2009q3.tar.bz2正确的是261.9M的,小于这个大小的那就是错误的,建议就是在飞凌官网上的开发环境中去重新下载一个。

2.Tslib的移植
tslib这个有人说我不用触摸是不是就可以不配置移植这个,我原来也是这么想的,但是具体操作的时候不配置tslib的时候,在后边编译QT的时候就会报错。

所以建议就是不管你用不用触摸大家都把这个移植上去。反正不费什么事情的。在移植tslib过程中按照飞凌给的手册操作的话好多人都在执行./tslib.sh脚本的时候提示错误不能正常执行。还有就是在安装autoconf、automake、libtool 包的时候也是经常出问题。所以我把这个几个步骤都跳过直接就是把飞凌提供编译好的tslib安装包tslib-sdk.tar.bz2 直接解压到/usr/local/arm目录下就OK了。
注:tslib-1.4.tar.bz2是源码压缩包,tslib-sdk.tar.bz2 编译好的可直接使用的压缩包。



3.Qt的移植
Qt的移植和tslib是一样的,飞凌写的手册太复杂了,其实他们有提供编译好的QT,所以咱们也可直接把qt4.8.5-sdk.tar.bz2 解压到/usr/local/arm/下,然后将编译好的/usr/local/arm/qt4.8.5/bin 下 qmake 重命名为 arm-qmake,然后拷贝到/usr/bin 下
# cd /usr/local/arm/qt4.8.5/bin
# cp qmake /usr/bin/arm-qmake
# arm-qmake -v #以后就可以通过 arm-qmake 来交叉编译 qt 程序了
QMake version 2.01a
Using Qt version 4.8.5 in /usr/local/arm/qt4.8.5/lib

这样QT的移植就搞定了,没什么难度的。如果按照飞凌的手册操作的话不仅会耗费大量的时间,而且中间会出现各种错误。
注:qt-everywhere-opensource-src-4.8.5.tar.bz2是QT的源码压缩包,qt4.8.5-sdk.tar.bz2 是编译好的可直接使用的压缩包。

4.安装qtcreator
在 Ubuntu 命令行执行如下命令:
        #apt-get install qtcreator
        安装完成后在终端输入以下命令,开启 Qt Creator
        #qtcreator&
这两步就不做过多的解释了,就是安装和打开的问题,如果qtcreator&打开的时候打不开那就试试中间放个空格试一下。

点击 Qt Creator 的 Tools 菜单下的 Options,点击左列 Build & Run,然后点击界面右侧的 Tools Chains标 签 页 , 然 后 点 击 Add 添 加 GCCE, 单 击 Compiler path Browse 添 加 交 叉 编 译 器(/usr/local/arm/arm-2009q3/bin/arm-linux-g++)的路径,如下图所示:

点击 Add 添加/usr/local/arm/qt4.8.5/bin/qmake 文件,添加进去,之后,点击 Apply 即配置完成

其中这两两步也是没什么可说的,一般的按照飞凌提供的手册上操作是不会出问题的。
容易出问题的就是在创建新的QT的项目的时候大家总是出现说:我创建了新的项目而且也在虚拟机上编译通过了,怎么就是移植到板子上就不能运行 ,提示找不到此二进制文件呢。我想说的是一般遇见这种情况那就是你的交叉编译器没有选对。确定一下交叉编译器是否选对了。

最后一步就是把编译好的二进制文件移植到板子上运行了。(例如生成的文件叫:F11)
把F11拷到TF卡或者(SD卡)中,插到板子上后上电,
#vi /etc/init.d/qt.sh
在qt.sh脚本中有

Matrix_gui 这个是可执行的二进制文件,改成您所要启动的QT的名字,最后把您的QT的可执行文件复制到/forlinx/qt/bin 目录下。重启后启动的就是您的QT的界面了

erchowyo 发表于 2016-10-9 17:13:15

楼主移植一下Qt5呗

xylee 发表于 2018-1-5 20:08:10

请问,如果我不需要开发界面,交叉编译环境需要搭建QT吗?

cooldog123pp 发表于 2016-8-5 13:59:06

mark一下 以后可能用到的

starx 发表于 2016-8-19 14:42:53

请问怎么显示中文,能不能做个这方面的?

380598473 发表于 2016-9-20 22:31:15

mark 一下,最近需要学习这方面的编程

茼蒿小朋友 发表于 2016-9-25 10:32:33

楼主写的非常好,非常专业!回复标记学习,感谢楼主分享!楼主我爱你一万年。:loveliness:

姚长建 发表于 2016-11-7 16:22:49

楼主移植QT5是不是一样的操作

筱羽_筱羽 发表于 2016-11-10 09:18:37

只可以是4.8.5么?我想换成4.8.3不知道要怎么做

zoull 发表于 2016-12-18 13:20:30

新人报到!

划清界线 发表于 2016-12-22 17:37:33

我在移植tslib时,安照pdf文档上步骤执行,最后下载到板上时。执行 ./ts_calibrate出现select device is not a touchscreen I understand !不知道是什么原因?

cyd411 发表于 2017-6-8 09:49:36

mark

:handshake

yika 发表于 2017-6-29 13:51:53

opengl可以用吗,我编译总提示:-1: error: cannot find -lQtOpenGL

chenpandys 发表于 2017-7-21 12:16:46

收藏:):):):)

加百利 发表于 2017-7-23 11:32:42

请问下,如果我使用QT界面控制底层硬件,比如控制led灯。是使用这个环境吗?怎样调用底层驱动呢?

qubaolina 发表于 2017-7-24 14:24:29

:hug:可以借鉴一下,谢谢楼主分享

blissshu 发表于 2017-8-29 10:54:18

移植下QT5被

wangxb2555 发表于 2017-9-1 07:46:29


楼主移植一下Qt5呗

laochen365 发表于 2017-9-24 20:44:39

mark一下,以后可以查看

ljt51882 发表于 2018-1-8 12:25:21

新人报到!
页: [1] 2
查看完整版本: 飞凌QT搭建环境中的心得