当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 > QT 5.3开发及移植(2)

QT 5.3开发及移植(2) 时间:2018-09-25      来源:未知

3、 Qt-everywhere移植

1) 下载源码qt-everywhere-opensource-src-5.3.1.tar.xz到Linux任意目录下

2)下载路径:

//www.qt.io/download-open-source/#section-2

3) 解压源码

执行:

$ tar xvf qt-everywhere-opensource-src-5.3.1.tar.xz

4) 修改源码

修改源码中qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf内容,修改后在生成的qmake默认配置中工具链为我们指定的工具链。

13 # modifications to g++.conf

14 QMAKE_CC = arm-linux-gnueabi-gcc

15 QMAKE_CXX = arm-linux-gnueabi-g++

16 QMAKE_LINK = arm-linux-gnueabi-g++

17 QMAKE_LINK_SHLIB = arm-linux-gnueabi-g++

18

19 # modifications to linux.conf

20 QMAKE_AR = arm-linux-gnueabi-ar cqs

21 QMAKE_OBJCOPY = arm-linux-gnueabi-objcopy

22 QMAKE_NM = arm-linux-gnueabi-nm -P

23 QMAKE_STRIP = arm-linux-gnueabi-strip

13 # modifications to g++.conf

14 QMAKE_CC = arm-none-linux-gnueabi-gcc

15 QMAKE_CXX = arm-none-linux-gnueabi-g++

16 QMAKE_LINK = arm-none-linux-gnueabi-g++

17 QMAKE_LINK_SHLIB = arm-none-linux-gnueabi-g++

18

19 # modifications to linux.conf

20 QMAKE_AR = arm-none-linux-gnueabi-ar cqs

21 QMAKE_OBJCOPY = arm-none-linux-gnueabi-objcopy

22 QMAKE_NM = arm-none-linux-gnueabi-nm -P

23 QMAKE_STRIP = arm-none-linux-gnueabi-strip

5) 拷贝configure.sh到解压后的源码目录下

6) 配置源码

创建configure.sh

在文件中添加:

./configure -prefix /opt/qt -release \

-opensource -qt-libpng -qt-libjpeg -plugin-sql-sqlite -widgets -qt-sql-sqlite \

-make libs -no-cups -no-nis -no-iconv -no-dbus -no-openssl -no-iconv \

-no-accessibility -no-sse2 -silent -xplatform \

linux-arm-gnueabi-g++ -nomake tools -nomake examples -nomake tests \

-qt-freetype -no-glib -strip -linuxfb -plugindir \

/opt/qt/plugin

这个配置与前几个版本有一定的区别,在以前版本里多数会有一个tslib的选项,且在移植linux内核触摸屏驱动时如果是多点触摸需要修改为单点触摸,在这个版本tslib和修改触摸屏驱动已经没有必要了,使用Qt默认触摸屏插件就能完美的支持当下使用多的多点式电容触摸屏。

执行:

$ chmod 777 configure.sh

$ ./configure.sh

输入”yes”后按回车继续

属性如下内容便是配置成功

7) 编译安装源码

执行:

添加工具链路径到环境变量中,本例使用工具链版本为4.6.4

$ export PATH=$PATH: /usr/local/toolchain/toolchain-4.6.4/bin/

$ make

编译过程中没有提示错误即可实行下边操作

$ sudo make install

安装后会在/opt/目录下生成qt目录。

8) 根文件系统修改

首先需要一个可以使用的根文件系统,标准Linux根文件系统即可。

解压标准根文件rootfs.tar.xz到Linux下/source/目录下

$ tar xvf rootfs.tar.xz -C /source

将上文编译好的qt库拷贝到根文件系统中

$ cp /opt/qt /source/rootfs -a

修改根文件系统中的profile文件添加如下内容:

$ vi /source/rootfs/etc/profile

添加如下内容:

export QTDIR=/opt/qt

export PATH=$QTDIR:$PATH

export QT_QPA_PLATFORM_PLUGIN_PATH=$QTDIR/plugin

export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0

export QT_QPA_FONTDIR=$QTDIR/lib/fonts

export TSDEVICE=/dev/input/event4

export QT_QPA_GENERIC_PLUGINS=evdevtouch:$TSDEVICE

export QWS_MOUSE_PROTO=evdevtouch:$TSDEVICE

export set QWS_DISPLAY=LinuxFb:/dev/fb0

#export set QWS_SIZE=800x600

export set QWS_SIZE=1024x600

export set QWS_DISPLAY="LinuxFb:mmWidth300:mmHeight400:0"

export set QT_QWS_FONTDIR=$QTDIR/lib/fonts/

export set

LD_LIBRARY_PATH=$QTDIR:$QTDIR/lib/:$QT_QPA_PLATFORM_PLUGIN_PATH:$QT_QPA_FONTDIR:$LD_LIBRARY_PATH

上一篇:QT 5.3开发及移植(1)

下一篇:QT 5.3开发及移植(3)

热点文章推荐
华清学员就业榜单
高薪学员经验分享
热点新闻推荐
前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2022 北京华清远见科技集团有限公司 版权所有 ,京ICP备16055225号-5京公海网安备11010802025203号

回到顶部