模板:Yocto qt

来自ARM Wiki
Tangdapeng讨论 | 贡献2020年6月30日 (二) 10:48的版本 工具链下载
跳转至: 导航搜索

QT 开发环境的搭建

工具链下载

  • Yocto 2.7(linux内核4.19.35) 下载地址 适用于i.Mx8平台
  • Yocto 1.8(linux内核4.1.15) 下载地址 适用于i.Mx6平台

SDK安装

安装qtcreator

  • qtcreator是qt开发常用的IDE
使用apt下载
sudo apt install qtcreator
官网下载安装包
  • 官网下载源码或者.run安装包qt官网下载链接
  • 终端使用命令下载.run安装包(除了qtcreator还包含其他可选组件)
wget http://download.qt.io/archive/qt/5.12/5.12.3/qt-opensource-linux-x64-5.12.3.run
  • 运行安装程序
chmod +x qt-opensource-linux-x64-5.12.3.run
./qt-opensource-linux-x64-5.12.3.run
  • 欢迎界面>> 登录界面 >>设置Qt >>设置安装路径 >>选择组件 >>同意许可协议 >>开始安装 >>安装完成
  • 登录界面,如无skip选项请先断开网络连接再打开安装程序

跳过登录选择安装路径选择组件同意许可协议安装完成

配置qtcreat

Yocto 2.7SDK使用默认安装路径时配置选项如下:

gcc:    /opt/fsl-imx-xwayland/4.19-warrior/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gcc
g++:    /opt/fsl-imx-xwayland/4.19-warrior/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-g++
gdb:    /opt/fsl-imx-xwayland/4.19-warrior/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gdb
qmake:  /opt/fsl-imx-xwayland/4.19-warrior/sysroots/x86_64-pokysdk-linux/usr/bin/qmake
Sysroot:/opt/fsl-imx-xwayland/4.19-warrior/sysroots/aarch64-poky-linux

Yocto 1.8SDK使用默认安装路径时配置选项如下:

gcc:    /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
g++:    /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++
gdb:    /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gdb
qmake:  /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/qt5/qmake
Sysroot:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/cortexa9hf-neon-poky-linux-gnueabi
  • 修改qtcreat.sh启动脚本,在开头加上如下命令
  • qtcreat.sh的文件路径根据安装方式来区分,一般在/usr/bin或者安装目录下的Tools/QtCreator/bin子目录
. /opt/fsl-imx-xwayland/4.19-warrior/environment-setup-aarch64-poky-linux   #Yocto 2.7
. /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi   #Yocto 1.8

Qtcreat01.png

  • 运行 QT creator,在 Qt 运行界面下,菜单栏点击 “Tools –> Options –> Build&Run”(在某些版本在Kits选项中配置),进行相关配置。

a.设置 “Compiler” :

点击 Add -> GCC -> gcc ,添加一个 gcc,Compiler path 一栏填写gcc的绝对路径

Qtcreat02.png

点击 Add -> GCC -> g++ ,添加一个 g++,Compiler path 一栏填写g++的绝对路径

Qtcreat03.png
b.设置 “QT Versions” :

点击 Add ,点击 Browser,选择 qmake location 为qmake的绝对路径

Qtcreat04.png
c.设置 “Debuggers”:

添加一个“ Manual” ,点击 Add,点击 Browser,Path 为gdb的绝对路径

Qtcreat05.png
d.设置“Devices ”

点击 Devices ,点击 add -> Generic Linux Device -> Start Wizard后输入开发板的IP、用户名及密码(用户名root、默认无密码)
  • 远程调试需要配置,可以不进行配置

Qtcreat07.png
e.设置“ Kit”

添加一个“ Manual” ,点击 Add,点击 Browser
Sysroot 一栏,填写Sysroot的绝对路径
Compiler 一栏,选择配置好的 gcc 和 g++
Debugger 一栏,选择配置好的 gdb
Qt version一栏,选择配置好的 qmake
然后点击 apply

Qtcreat06.png

示例程序

使用 qmake编译生成demo

a.配置编译环境

. /opt/fsl-imx-xwayland/4.19-warrior/environment-setup-aarch64-poky-linux  #Yocto 2.7
. /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi  #Yocto 1.8

b.输入如下命令下载、编译demo程序

sudo apt install git
git clone https://github.com/qt/qtdoc.git  #拉取示例代码
cd qtdoc/ 
qmake qtdoc.pro
make -j4

c.将qtdoc文件夹拷贝到开发板,进入到qtdoc下的examples/demos/calqlatr子目录

./calqlatr

效果如下(图示为计算器demo):
Qmakedemo01.pngQmakedemo01 1.png

使用qtcreator创建工程文件

a.进入 qtcreator 的安装目录,在终端上手动打开 qtcreator。

sh qtcreator.sh

b.点击 “New Project”,选择 “Application”,“Qt Widgets Application”,然后此次填写好项目名称,项目位置后,在出现的“Kits”一栏,注意勾选上刚刚创建的 “imx_yocto”
Qtdemo02.png
c.创建完毕后,点击“Build”,“Build Project xxx”后,将会生成可执行程序
650px
d.将生成的程序拷贝到开发板中运行

./yoctotest

Qtdemo04.png