欢迎光临
我们一直在努力

Linux QT环境搭建

Linux QT环境搭建

QT运行环境测试

Ubuntu20.04

Ubuntu20.04系统默认配置QT5.12.8运行环境。

1. 查看QT库

$ ls -l /usr/lib/aarch64-none-linux-gnu/libQt*

2. 将demo拷贝至系统任意目录下,进行测试:

$ sudo chmod +x ./mainwindow
$ sudo ./mainwindow

Debian11

Debian11系统默认配置QT5.15.2运行环境。

1. 查看QT库

$ ls -l /usr/lib/aarch64-none-linux-gnu/libQt*

2. 将demo拷贝至系统任意目录下,进行测试:

$ sudo chmod +x ./mainwindow
$ sudo ./mainwindow

QT交叉编译环境搭建

测试平台:虚拟机Ubuntu20.04

gcc交叉编译工具

  • SDK 自带交叉编译工具链

编译工具链路径(不推荐,会出现版本不兼容):

(SDK)/prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/

  • gcc 交叉编译链安装

从网盘中获取gcc 交叉编译链,将获取的压缩包放到虚拟机目录下进行解压,-C /opt/gcc-arm 为指定解压路径

$ sudo tar -xvf gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu.tar.xz -C /opt/gcc-arm

  • 环境变量配置

1. 若需系统正确识别交叉编译工具链,将其安装路径配置到环境变量中。

临时生效(仅当前终端会话有效):

$ export PATH=/opt/gcc-arm/bin:$PATH

永久生效:

$ sudo vim /etc/profile
export PATH=/opt/gcc-arm/bin:$PATH

source /etc/profile

2. 验证安装

验证是否成功安装并配置工具链:

aarch64-none-linux-gnu-gcc –version

输出类似内容,则安装成功:

aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture) 9.2.1 20191203
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

qmake 安装

在Qt项目中,qmake 根据.pro工程文件生成MakeFile。在开发板中安装QT,gcc,无需修改编译工具,安装源码即可。

1. 通过网盘下载Qt / 通过访问官网下载最新Qt(历史版本Qt下载)

官网下载示意图:

2. 安装所需的依赖库与工具链

$ sudo apt-get install build-essential perl python3 git
$ sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev
$ sudo apt-get install flex bison gperf libicu-dev libxslt-dev ruby
$ sudo apt-get install libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev libxtst-dev libxss-dev libdbus-1-dev libevent-dev libfontconfig1-dev libcap-dev libpulse-dev libudev-dev libpci-dev libnss3-dev libasound2-dev libegl1-mesa-dev gperf bison nodejs
$ sudo apt-get install libasound2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
$ sudo apt-get install libgstreamer-plugins-bad1.0-dev
$ sudo apt install clang libclang-dev
$ sudo apt-get install xz-utils
$ sudo ln -s /usr/bin/python3 /usr/bin/python

3. 将下载完成的Qt解压至opt文件夹中

$ sudo tar -xvf qt-everywhere-src-5.12.2.tar.xz -C /opt/

进入解压文件夹,建立auto.sh脚本文件

$ sudo vim auto.sh

#!/bin/bash

./configure \\
-prefix /opt/Qt/ \\
-opensource -confirm-license \\
-nomake examples \\
-nomake tests \\
-release \\
-xplatform linux-aarch64-gnu-g++ \\
-device-option CROSS_COMPILE=/opt/gcc-arm/bin/aarch64-none-linux-gnu- \\
-no-eglfs \\
-no-xcb \\
-no-opengl \\
-skip qt3d \\
-skip qtcharts \\
-skip qtandroidextras \\
-skip qtlocation \\
-skip qtmultimedia \\
-skip qtsensors \\
-skip qtserialbus \\
-skip qtserialport \\
-skip qtwayland \\
-skip qtdeclarative \\
-skip qtxmlpatterns \\
-skip qtwebchannel \\
-skip qtwebengine \\

4. 修改qmake.conf文件

!!! Note QT源码中qtbase/mkspecs/目录下存在不同平台,示例中采用 linux-aarch64-gnu-g++ 目录下 qmake 配置文件,但因交叉编译工具链不一致,需修改 qmake.conf 文件以适配当前使用的交叉编译工具。

# modifications to g++.conf
QMAKE_CC =/opt/gcc-arm/bin/aarch64-none-linux-gnu-gcc
QMAKE_CXX =/opt/gcc-arm/bin/aarch64-none-linux-gnu-g++
QMAKE_LINK =/opt/gcc-arm/bin/aarch64-none-linux-gnu-g++
QMAKE_LINK_SHLIB =/opt/gcc-arm/bin/aarch64-none-linux-gnu-g++

# modifications to linux.conf
QMAKE_AR =/opt/gcc-arm/bin/aarch64-none-linux-gnu-ar cqs
QMAKE_OBJCOPY =/opt/gcc-arm/bin/aarch64-none-linux-gnu-objcopy
QMAKE_NM =/opt/gcc-arm/bin/aarch64-none-linux-gnu-nm -P
QMAKE_STRIP =/opt/gcc-arm/bin/aarch64-none-linux-gnu-strip

5. 运行脚本交叉配置QT源码,执行./configure

$ sudo chmod 755 auto.sh
$ sudo ./auto.sh

!!! Note ./configure -prefix /opt/Qt/:Qt安装路径 -opensource -confirm-license:安装 Qt 开源社区版 -nomake examples :禁止编译并安装 Qt 示例程序 -nomake tests:禁止编译并安装 Qt 测试用例与测试框架 -release:指定 Qt 以 Release 模式进行编译 -xplatform:指定 Qt 编译的目标运行平台 -qtlocation : 提供跨平台位置服务全套解决方案 -qtwebengine:基于 Chromium 内核的高性能网页渲染引擎 -skip:跳过指定 Qt 模块的编译 若项目无需位置服务或网页渲染功能,编译Qt时可通过-skip参数跳过qtlocation和qtwebengine模块,大幅减少编译时间。

6. 执行编译,编译时长约4~12小时

$ sudo make -j4

编译完成执行命令将程序安装至-prefix指定的/opt/Qt/ 中。

$ sudo make install

7. 成功安装后修改环境变量

$ sudo vim /etc/profile

export QTDIR=/opt/Qt
export PATH=$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

$ source /etc/profile

8. 查看版本

$ qmake -v

qtcreator 安装

!!! Tip 安装qtcreator必须先安装Qt,可通过不同方式进行qtcreator安装,根据自身情况选择对应方式。

安装包安装

!!! Tip 在虚拟机中安装qtcreator。

1. 进入Qt官网,选择安装包

image-20250219155414011

2. 在虚拟机中运行安装程序

!!! Tip 需要在Qt官网注册账号,安装过程为图像化安装,安装过程和Windows保持一致。

chmod +x qt-opensource-linux-x64-5.12.2.run
./qt-opensource-linux-x64-5.12.2.run

apt 安装

!!! Tip 在开发板中安装qtcreator。

通过apt安装对应qtcreator,可能和已安装QT版本不一致。

sudo apt update
sudo apt install qtcreator

源码安装

!!! Tip 在虚拟机中安装qtcreator。 特殊情况需要编译特定版本Qtcreator(不推荐使用此安装方式),推荐使用与 Qt 框架版本相匹配的 Qt Creator 版本。

1. 下载Qtcreator源码

image-20241028094210629

2. 压缩包解压并进入解压路径,执行命令

$ qmaek -r

3. 执行上文命令后生成MakeFile文件,执行命令进行编译

$ sudo make -j4

4. 编译完成,执行命令

$ sudo make install

5. bin目录存在qtcreator和qtcreator.sh,执行命令,qtcreator在后台运行,根据需求配置qtcreator

$ ./qtcreator.sh &

Kit配置

1. GCC中添加C编译器和C++编译器

image-20250416112806987

2. 添加qmake

image-20250416112845224

3. 配置完成

image-20250416112945015

赞(0)
未经允许不得转载:171主机测评 » Linux QT环境搭建
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址