安装Qt6.2 在Ubuntu 22.04系统

先看目录,了解整体流程!

先看目录,了解整体流程!

先看目录,了解整体流程!

文章目录

下载

下载对应系统的下载器

清华园地址:https://mirrors.tuna.tsinghua.edu.cn/qt/official_releases/online_installers/

官方地址

https://download.qt.io/official_releases/online_installers/

新建一个路径,下载

bash 复制代码
# 新建一个目录
mkdir -p ~/Downloads/qt && cd ~/Downloads/qt
# 在上面的网址,右键复制链接地址
# 下载
wget https://mirrors.tuna.tsinghua.edu.cn/qt/official_releases/online_installers/qt-unified-linux-x64-online.run

为下载器指定镜像源

可以复制,以防手打导致没有指定好镜像下载过慢

北方 选清华镜像源

bash 复制代码
./qt-unified-linux-x64-online.run --mirror https://mirrors.tuna.tsinghua.edu.cn/qt

南方 选南大镜像源

bash 复制代码
./qt-unified-linux-x64-online.run --mirror https://mirrors.tuna.tsinghua.edu.cn/qt

下载长期支持版本(比较稳定)

根据下载器的图形界面的提示安装

Latest support release 版本

缩写 LST

如果不需要的组件可以不安装

一共需要 13g 左右

添加到系统环境变量

apt可能下载过qt,不要动,如果删除可能会影响某些程序的启动。

我们直接将变量链接到qt6上面

添加环境变量到 ~/.bashrc 或 ~/.zshrc文件

根据你的路径修改

shell 复制代码
# add this snippet at the end of .zshrc
# 添加到PATH前面可以优先被搜到
# bash shell
echo "export PATH=~/Qt/6.2.4/gcc_64/bin:$PATH" >> ~/.bashrc

# 如果用的zsh shell 使用下面的
echo "export PATH=~/Qt/6.2.4/gcc_64/bin:$PATH" >> ~/.zshrc

验证

shell 复制代码
qmake -v
# 显示
QMake version 3.1
Using Qt version 6.2.4 in /home/chris/Qt/6.2.4/gcc_64/lib

项目中使用

编写CMakeLists.txt

指定 qt 的 cmake 配置路径

c 复制代码
# 指定 qt 安装库的路径,由 cmake 配置
set(CMAKE_PREFIX_PATH /home/chris/Qt/6.2.4/gcc_64/lib/cmake)
# 告诉CMake去寻找并加载名为"Core", "Gui" 和 "Widgets" 的 Qt 6组件。如果没有找到,则构建过程将失败。
find_package(Qt6 COMPONENTS
        Core
        Gui
        Widgets
)
set(CMAKE_AUTOUIC ON)   # 将.uic文件自动转换为相应的头文件
set(CMAKE_AUTOMOC ON)   # 将Q_OBJECT宏的类的原对象编译
set(CMAKE_AUTORCC ON)   # 处理.qrc资源文件



# 添加源代码和头文件和 ui 文件
add_executable(detect *.cpp *.h *.ui)

# 链接 qt6
target_link_libraries(detect Qt6::Core Qt6::Gui Qt6::Widgets)

Troubleshot

无法打开QtCteator

问题:找不到 libxcb

解决方案:

shell 复制代码
sudo apt install libqxcb-xinerama0
sudo apt install libqxcb-cursor0

排查过程:

shell 复制代码
# 打开调试功能
export QT_DEBUG_PLUGINS=1

cd ~/Qt/Tools/QtCreator/bin # 进入QtCreator目录
# 启动
./qtcreator

# 会在最后显示错误信息

切换到插件目录,查看具体缺少哪个

shell 复制代码
cd ~/Qt/Tools/QtCreator/lib/Qt/plugins/platforms
# 查找qt未找到的库
ldd libqxcb.so | grep not 
相关推荐
iAm_Ike5 小时前
Go 中自定义类型与基础类型间的显式类型转换详解
jvm·数据库·python
iuvtsrt5 小时前
Golang怎么实现方法集与接口的匹配_Golang如何理解值类型和指针类型实现接口的区别【详解】
jvm·数据库·python
tongluowan0077 小时前
MySQL中列数量及长度
数据库·mysql
原来是猿7 小时前
网络计算器:理解序列化与反序列化(中)
linux·运维·服务器·网络·tcp/ip
-liming-7 小时前
单片机设计_串口调试工具
数据库·单片机·mongodb
鹿角片ljp7 小时前
从告警检测到智能研判:SQL 注入研判模型的设计与实践
数据库·sql
AOwhisky7 小时前
虚拟化技术学习笔记
linux·运维·笔记·学习·虚拟化技术
小新同学^O^8 小时前
简单学习 --> Spring事务
数据库·学习·spring
rabbit_pro8 小时前
Docker compose部署Ollama使用模型
linux·运维·docker
前进的李工9 小时前
MySQL慢查询日志优化实战
数据库·mysql·性能优化