嵌入式Qt开发环境的搭建

前端之家收集整理的这篇文章主要介绍了嵌入式Qt开发环境的搭建前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

按照不同的图形界面来划分,分为四个版本:
Win32版:适用于windows平台;
X11版:适用于各种X系统的Linux和Unix平台;
Mac版:适用于苹果的MacOS;
Embedded版:适用于具有帧缓冲(Frame buffer)的linux平台;

Qtopia是基于qt开发的一个软件平台,Qtopia是构建于Qt/E之上的一系列应用程序,在这个平台上我们可以开发各种应用程序。

总的来说,QT也就三种:面向桌面的x11、面向嵌入式的Qt/E、以及面向嵌入式带各种应用程序的Qtopia桌面系统。

Qt开发资源包下载地址:
https://download.qt.io/official_releases/

构建Qt/Embeded的交叉编译环境需要3个Qt开发环境:
Qt的桌面开发环境:在linux中全安装qt,用它编译好的程序后,可以直接用“./”运行。
Qt/Embeded(x86)环境:在宿主机平台模拟编译和调试目标机程序的环境,带有qvfb功能,在PC机上可以模拟应用程序在arm开发板上的运行情况。用此编译好的程序,只用“./”命令不可以运行,必须加上参数 -qvfb -qws。
Qt/Embeded(ARM)交叉编译环境:编译好的程序,用于在arm平台上运行。
首先要准备好交叉编译所需要的软件包:

  1. gcc-arm-none-eabi-6-2017-q1-update-linux.tar.bz2(交叉编译环境)
  2. qt-everywhere-opensource-src-5.9.0.tar.xz(Qt的源码)
  3. qt-creator-linux-x86_64-opensource-2.5.2.bin(我的系统是64位,所以选择x86_64)
  4. tslib-1.4.tar.gz(触摸屏校验工具)

qt资源下载地址:
http://download.qt.io/archive/

Qt开发环境搭建

安装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下安装软件差不多。

编译Qt库源码

将源码 qt-everywhere-opensource-src-5.9.0.tar.xz 进行解压,并复制三份到/usr/local目录下,并分别命名为qt-pc,qt-x86,qt-arm。

编译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 命令 把以前的配置信息清除掉,然后再重新配置。

编译x86版
进入qt-x86目录,执行如下操作:

$ ./configure  -embedded x86    -qt-gfx-qvfb    -qt-kbd-qvfb   -qt-mouse-qvfb
$ make
$ make install

安装过程比较长,没有碰到过错误
编译安装PC版中的 qvfb:
进入qt-pc/tools/qvfb/目录,执行如下操作:

$ make

编译完毕,将qt-pc/bin目录下的qvfb文件复制到/usr/local/Trolltech/QtEmbedded-5.9.0/bin目录。
编译qvfb时,出现了如下错误
x11keyfaker.cpp:48:34: 致命错误: X11/extensions/XTest.h:没有那个文件或目录
编译中断。make: * [.obj/release-shared/x11keyfaker.o] 错误 1

解决方法

sudo apt-get install xorg-dev

如果makefile中没有-lXtst选项,则修改makefile 中 LIBS 选项: 添加 -lXtst选项

编译ARM版
必须加上“-prefix /usr/local/Trolltech/QtEmbedded-5.9.0-arm ”参数, 不然安装后不在QtEmbedded-5.9.0-arm文件夹下,而是覆盖了QtEmbedded-5.9.0。

# ./configure \
-prefix  /usr/local/Trolltech/QtEmbedded-4.6.3-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

如果放弃配置,则使用命令:

$ make confclean

编译:

$ make

安装:

$ make install
原文链接:https://www.f2er.com/bash/392453.html

猜你在找的Bash相关文章