“模板:Yocto qt”的版本间的差异

来自ARM Wiki
跳转至: 导航搜索
QT 开发环境的搭建
工具链下载
 
(未显示同一用户的8个中间版本)
第1行: 第1行:
 
===QT 开发环境的搭建===
 
===QT 开发环境的搭建===
 
====工具链下载====
 
====工具链下载====
*Yocto 2.7(linux内核4.19.35) [http://norcord.com:8070/f/39998b1f237647719406/ 下载地址]
+
*Yocto 2.7(linux内核4.19.35)适用于i.Mx8平台 [http://norcord.com:8070/f/39998b1f237647719406/ 下载地址]
<!--
+
*Yocto 1.8(linux内核4.1.15) 适用于i.Mx6平台 [http://norcord.com:8070/f/2dd75e4214d6429b8f72/ 下载地址]
*Yocto 1.8(linux内核4.1.15) [ 下载地址]
+
 
-->
 
 
====SDK安装====
 
====SDK安装====
<!--
+
*[[imx8SDK安装方法|Yocto 2.7SDK安装方法]]
:*下载工具链“fsl-imx-xwayland-glibc-x86_64-imx-image-full-aarch64-toolchain-4.19-warrior.sh”[http://norcord.com:8070/f/39998b1f237647719406/ 下载地址]<br />
+
*根据上文安装SDK,Yocto 1.8 SDK安装参考Yocto 2.7
-->
 
:*根据上文安装SDK[[imx8SDK安装方法|Yocto 2.7SDK安装方法]]
 
  
 
====安装qtcreator====
 
====安装qtcreator====
第41行: 第38行:
 
Sysroot:/opt/fsl-imx-xwayland/4.19-warrior/sysroots/aarch64-poky-linux
 
Sysroot:/opt/fsl-imx-xwayland/4.19-warrior/sysroots/aarch64-poky-linux
 
</syntaxhighlight>
 
</syntaxhighlight>
<!--
 
 
Yocto 1.8SDK使用默认安装路径时配置选项如下:
 
Yocto 1.8SDK使用默认安装路径时配置选项如下:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
gcc:    /opt/fsl-imx-x11/4.1.15-1.2.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
+
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-1.2.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++
+
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-1.2.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gdb
+
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-1.2.0/sysroots/x86_64-pokysdk-linux/usr/bin/qmake
+
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-1.2.0/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
+
Sysroot:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/cortexa9hf-neon-poky-linux-gnueabi
 
</syntaxhighlight>
 
</syntaxhighlight>
-->
 
 
*修改qtcreat.sh启动脚本,在开头加上如下命令
 
*修改qtcreat.sh启动脚本,在开头加上如下命令
 
*qtcreat.sh的文件路径根据安装方式来区分,一般在/usr/bin或者安装目录下的Tools/QtCreator/bin子目录
 
*qtcreat.sh的文件路径根据安装方式来区分,一般在/usr/bin或者安装目录下的Tools/QtCreator/bin子目录
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
. /opt/fsl-imx-xwayland/4.19-warrior/environment-setup-aarch64-poky-linux
+
. /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
 
</syntaxhighlight>
 
</syntaxhighlight>
 
[[文件:qtcreat01.png|frameless|650px]]
 
[[文件:qtcreat01.png|frameless|650px]]
第87行: 第83行:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
. /opt/fsl-imx-xwayland/4.19-warrior/environment-setup-aarch64-poky-linux  #Yocto 2.7
 
. /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
 
</syntaxhighlight>
 
</syntaxhighlight>
 
b.输入如下命令下载、编译demo程序
 
b.输入如下命令下载、编译demo程序
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
sudo apt install git
 
sudo apt install git
git clone https://github.com/qt/qtdoc.git  #拉取demo代码
+
git clone https://github.com/qt/qtdoc.git  #拉取示例代码
 
cd qtdoc/  
 
cd qtdoc/  
 
qmake qtdoc.pro
 
qmake qtdoc.pro
第101行: 第98行:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
效果如下(图示为计算器demo):<br />
 
效果如下(图示为计算器demo):<br />
[[文件:qmakedemo01.png|frameless|650px]]
+
[[文件:qmakedemo01.png|frameless|650px]][[文件:qmakedemo01_1.png|frameless|650px]]
  
 
====使用qtcreator创建工程文件====
 
====使用qtcreator创建工程文件====

2020年6月30日 (二) 10:50的最新版本

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