米尔i.MX6UL开发板Linux应用开发(三)

硬件:米尔i.MX6UL开发板MYD-Y6ULX
简介:MYD-Y6ULX开发板(i.MX6UL开发板)由MYC-Y6ULX核心板和底板组成,基于NXP i.MX6UL处理器或i.MX6ULL处理器可选,MYD-Y6ULX开发板(i.MX6ULL开发板)提供丰富外设硬件,板载了Mini PCIE接口(用于4G模块)及SIM卡槽、WIFI芯片及天线接口、双百兆网口、LCD液晶接口、音频接口、带隔离的CAN,RS485,RS232等。
部署开发环境:开发前需要PC安装好Linux操作系统,推荐使用Ubuntu 16.04 64bit发行版,连接网线并配置好网络,后续操作需要连接互联网安装或下载相关软件包。
在这里插入图片描述

本章介绍QT应用开发
Qt是一个跨平台的图形应用开发框架,被应用在不同尺寸设备和平台上,同时提供不同版权版本供用户选择。MYS-6ULX使用Qt 5.6.2版本进行应用开发。

在Qt应用开发中,推荐使用QtCreator集成开发环境,可以在Linux PC下开发Qt应用,自动化地交叉编译为开发板的ARM架构。

本章使用Yocto构建的SDK工具作为交叉编译系统,配合QtCreator快速开发图形类应用程序。开始本章前,请先完成前面(一)的Yocto构建过程。或者使用光盘中提供的预编译好的SDK工具包。本章开始前,请安装好应用SDK开发工具。

安装QtCreator
QtCreator安装包是一个二进制程序,直接执行就可以完成安装。
cd $DEV_ROOT

chmod a+x 03-Tools/qt-creator-opensource-linux-x86_64-4.1.0.run
sudo 03-Tools/Qt/qt-creator-opensource-linux-x86_64-4.1.0.run

执行安装程序后,一直点击下一步即可完成。默认安装目录

在"/opt/qtcreator-4.1.0"。

安装完成后,为了让QtCreator使用Yocto的SDK工具,需要对QtCreator加入

环境变量。修改"/opt/qtcreator-4.1.0/bin/qtcreator.sh"文件,在"#!

/bin/sh"前加入Yocto的环境配置即可,参考如下:

source /opt/myir-imx6ulx-fb/4.1.15-2.0.1/\
environment-setup-cortexa7hf-neon-poky-linux-gnueabi
#! /bin/sh
# Use this script if you add paths to LD_LIBRARY_PATH
# that contain libraries that conflict with the
# libraries that Qt Creator depends on.

使用QtCreator时,请从终端执行"qtcreator.sh"来启动QtCreator,参考如下:

/opt/qtcreator-4.1.0/bin/qtcreator.sh &

配置QtCreator
第一步,运行 QtCreator 后,依次点击"Tool"->“Options”,出现选项对话
框,在左侧点击"Build & Run",右边选择"Compilers"标签。 点击右侧"Add"按钮,弹出下拉列表后,选择"GCC",在下面填写"Name"为"MYS6ULx-GCC",“Compiler path"点击旁边的"Browse…“按钮选择到arm-poky-linux-gnueabi-g++的路径,例子中的路径是”/opt/myir-imx6ulx-fb/4.1.15-2.0.1/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++”。填写完成后,点击"Apply"。
!
在这里插入图片描述

第二步,选择"Qt Version"标签,在右侧点击"Add…",会弹出qmake路径选
择对话框,这里以"/opt/myir-imx6ulx-fb/4.1.15-2.0.1/sysroots/x86_64-
pokysdk-linux/usr/bin/qt5/qmake"为例子。选择”qmake”文件后,点
击"Open"按钮。“Version name"改为"Qt %{Qt:Version} (mys6ulx-qt5)”。然后
点击"Apply"按钮。
在这里插入图片描述
第三步,选择左侧"Device",点击右边的"Add…“按钮,填写内
容"Name"为"MYS6ULx Board”,“Host name"为开发板的IP地址(可以暂时填
写任意一个地址),“Username"为"root”,然后点击"Apply”。
在这里插入图片描述
第四步,点击左侧"Build & Run"回到"Kits"标签下,“Name"为"MYS6ULx-
dev-kit”,"Device"选择"MYS6ULx Board"选项了。“Sysroot"选择目标设备的
系统目录,这里以”/opt/myir-imx6ulx-fb/4.1.15-2.0.1/sysroots/cortexa7hf-
neon-poky-linux-gnueabi"为例。“Compiler"选择之前配置的名称"MYS6ULx-
GCC”,“Qt version"选择之前配置的名称"Qt 5.6.2 (mys6ulx-qt5)”,“Qt
mkspec"填写为"linux-oe-g++”。其它默认即可,最后点击"Apply"和"OK"按
钮。
在这里插入图片描述

测试Qt应用
为了方便测试之前的配置是否正确,这里提供了一个Qt例程,打开项目后,
配置为相应的编译工具套件,就可以编译此例程。
第一步,在菜单栏选择"File"->“Open File or Project”,在打开的对话框中,
浏览到"helloword"例程的目录下,选择"helloworld.pro"文件,点击"Open"按
钮。
第二步,项目打开后,在左侧菜单列中,选择"Projects"图标,右侧界面切换
为"helloworld"项目的"Build & Run"标签下,点击"Add kit"下拉列表,选
择"MYS6ULx-dev-kit"选项,这样"helloworld"项目就会使用"MYS6ULx-dev-
kit"的相关配置构建应用。
第三步,点击菜单栏"Build"->“Build Project hellowrld"按钮,即可完成项目的编译,同时下侧会有编译过程输出。
编译输出结果:
在这里插入图片描述
QtCreator 构建 helloworld 项目后,编译好的二进制文件存放在”~/build-
helloworld-MYS6ULx_dev_kit-Debug/"目录下,可以使用 file 命令查看,是否编译为 ARM 架构。

file ~/build-helloworld-MYS6ULx_dev_kit-Debug/helloworld
/home/kevinchen/build-helloworld-MYS6ULx_dev_kit-Debug/helloworld: 
ELF 32-bit LSB executable, ARM, EABI5 version 1 (GNU/Linux), 
dynamically linked, interpreter /lib/ld-linux-armhf.so.3, 
for GNU/Linux 2.6.32, 
BuildID[sha1]=9c5f22deb1d8272c2a81528c171d215896112784, not stripped

然后将 helloworld 文件拷贝到开发板下运行即可。

# ./helloworld -platform linuxfb

将会在 LCD 屏幕上看到Qt 窗口中多个QLabel的文本内容。
在这里插入图片描述

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