基于Linux环境在ARM嵌入式平台快速部署Qt5.4

基于Linux环境在ARM嵌入式平台快速部署Qt5.4
— by Toradex 秦海

Qt是一个领先的跨平台应用和UI 开发框架(Framework),使用标准C++,适用于桌面,嵌入式和移动平台。在Nokia时代,Qt4就被大家所熟知并广泛应用,在被2012年被Digia全面收购后,Qt5的推出更是将Qt的跨平台性和易用性提升到了一个新的台阶,如今Qt5已经更新到了5.4版本,针对嵌入式平台的版本为Qt5.4 for Device Creation(Qt Enterprise Embedded),可以直接在Qt 网站上注册下载对应的Installer,安装后享有30天的免费使用期。

Qt 5.4 for Device Creation不仅包含基本开发框架功能,还提供很多独特特性
- Qt Enterprise Tooling
- Pre-built Boot to Qt software stack
- Value-Add components: Qt Quick Enterprise Controls, Qt Virtual Keyboard, Qt Charts, Qt Data Visualization
- Beautiful, High-Performing, Modern User-Interfaces, for instance using Qt Quick 2:

  • Rendered using OpenGL ES 2.0
  • Rendered using Qt Quick 2D Renderer non-GPU

本文着重就利用Boot to Qt 软件包来实现Qt5在嵌入式ARM平台基于Embedded Linux快速部署做较详细说明,Boot to Qt是一个包含在Qt5 for Device Creation中经过优化可以直接安装到嵌入式平台上的完整软件包,包含Embedded Linux和Embedded Android两个版本,对于Embedded Linux版本,只需要一个1GB容量的SD卡就可以将Boot to Qt image安装到目标嵌入式平台,下面图示是采用Boot to Qt 和传统方式在嵌入式系统部署Qt的对比,Boot to Qt 可以非常快速在目标嵌入式系统上面部署Qt进行评估和开发。
基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第1张图片

下面以Toradex Apalis iMX6/Eva Board作为嵌入式ARM目标平台,详细介绍如何利用Boot to Qt快速将Qt5.4 for Device Creation部署,在此之前笔者先展示几张成功运行Qt launcher 的图片
基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第2张图片
基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第3张图片
基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第4张图片

  1. 准备64bit Linux 开发主机环境,这里以Ubuntu 14.04.1 LTS为例
    这里写图片描述

  2. 安装32bit程序兼容库
    这里写图片描述

  3. 如需要使用emulator进行模拟开发,则需要安装Virtual box
    a. 下载最新版virtualbox amd64 deb安装包并安装 https://www.virtualbox.org/wiki/Linux_Downloads
    b. 配置
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第5张图片

  4. 在开发主机上安装Qt 5.4 for Device Creation
    a. 在Qt Company(www.qt.io)网站上面注册下载对应Installer
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第6张图片
    b. 安装,默认安装目录 ~/Qt
    这里写图片描述

  5. 将Boot to Qt image 下载到SD卡(至少1GB容量)
    a. 将SD卡连接到开发主机Ubuntu系统,并确认在系统中的设备名(如下面sdc)
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第7张图片
    b. 将Boot to Qt image下载到SD卡
    这里写图片描述

  6. 在目标嵌入式平台上面运行Boot to Qt
    a. 将SD卡插入Eva Board 8bit SD 插槽
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第8张图片
    b. 通过串口将iMX6系统和开发主机连接,开机进入uboot
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第9张图片

c. 设置环境变量,从SD启动完成,Eva Board连接显示输出,可以看到Qt launcher自动运行
这里写图片描述
基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第10张图片
基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第11张图片

  1. 在iMX6系统和开发主机之间建立USB连接
    a. 在开发主机shell运行下面命令创建新的udev 规则
    这里写图片描述
    b. 连接Eva Board X50 USB 端口到开发主机
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第12张图片
    c. 查看是否连接成功
    这里写图片描述

  2. 在开发主机上面配置Qt for Device Creator,并运行最简例子
    a. 运行Qt Creator,Tools>Options>Kits选项卡配置正确的device
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第13张图片
    b. File > New File or Project 创建一个Qt Quick Application
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第14张图片
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第15张图片
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第16张图片
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第17张图片
    基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第18张图片

c. 点三角标志来运行编译并下载到目标系统上运行
基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第19张图片
基于Linux环境在ARM嵌入式平台快速部署Qt5.4_第20张图片

综上所述,通过Qt5.4强大的跨平台性能可以更方便的将应用从桌面平台移植到嵌入式和移动平台,同时借助Boot to Qt,我们可以迅速的在目标嵌入式平台部署Qt进行评估或开发,这大大提高了开发者的开发效率,因此如果你是在嵌入式ARM平台进行Embedded Linux应用开发,Qt5.4无疑是最好的选择之一

你可能感兴趣的:(基于Linux环境在ARM嵌入式平台快速部署Qt5.4)