米尔电子
直播中

jf_50393217

4年用户 182经验值
擅长:可编程逻辑 嵌入式技术
私信 关注
[技术]

【米尔-TIAM62开发板-接替335x-试用评测】5、QT应用开发体验

确认QT版本

QT发展了这么多年,迭代了数百个版本,不同版本不一定能很好的兼容,所以我们需要先确定SDK里的qt库版本。我们先打开ssh工具连接到开发板上,然后运行以下命令

ls /usr/lib/libQt*Wi*

可以看到,命令行有输出,也可以确定QT的版本就是5.15
image.png

下载SDK

确认了版本之后,就好办了,我们去qtbase仓库,拉取5.15版本的示范代码。使用以下命令拉取仓库

git   clone  https://github.com/qt/qtbase  -b  5.15  --depth=1

源码拉取之后,就可以用VSCode打开源码目录查看了。
然后我们用VSCode打开这个目录examples/widgets/widgets/calculator

image.png

创建CMake文件

QT官方已经支持使用CMake进行编译了,我们只需要在目录里新建一个CMakeLists.txt文件,并将文件内容修改成以下内容即可。

cmake_minimum_required(VERSION 3.1.0)

project(calculator VERSION 1.0.0 LANGUAGES CXX)

set(CMAKE_C_COMPILER "/path/to/aarch64-oe-linux-gcc")

set(CMAKE_CXX_COMPILER "/path/to/aarch64-oe-linux-gnu-g++")

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

if(CMAKE_VERSION VERSION_LESS "3.7.0")
    set(CMAKE_INCLUDE_CURRENT_DIR ON)
endif()

find_package(Qt5 COMPONENTS Widgets REQUIRED)

add_executable(calculator
    button.cpp
    calculator.cpp
    main.cpp
)

target_link_libraries(calculator Qt5::Widgets)

编译

由于开发板上没有docker,部署qt的编译环境太麻烦了,我们选择交叉编译,首先得确认以下rootfs用的glibc和编译器版本
image.png

运行命令后,可以看到,使用的是11.3版本的编译器。

接下来,我们只需要在电脑上使用docker拉取qt编译镜像,部署好工具链就可以了。
使用以下命令拉取docker,(工具链我已经部署好了)

docker  run  -it  -v  /opt:/opt  --name  qt  fstlx/qt5

然后在工程目录里运行,就可以顺利编译了

mkdir build && cd build
cmake ../ && make -j8

运行

编译完成后,我们把程序复制到开发板上运行,就可以看到qt的计算器demo运行起来了。

image.png

更多回帖

发帖
×
20
完善资料,
赚取积分