在 Ubuntu 24.04 中编译 Qt 5.15.2 项目完全指南
1. 前言在跨平台开发中许多团队选择在 Windows 上编写代码在 Linux 上编译和部署 Qt 项目。本文将详细介绍在 Ubuntu 24.04 环境下从零开始搭建 Qt 5.15.2 编译环境的方法并给出所有必需的依赖包、下载链接以及详细的步骤说明帮助你将 Windows 上开发的 Qt 项目顺利迁移到 Linux 编译。在阅读过程中你可以根据需要在对应位置插入截图。文中已预留了图片插入位置方便你记录操作过程。2. 环境准备总览在开始之前我们需要准备好以下核心组件组件版本说明操作系统Ubuntu 24.04 LTS64 位桌面版或服务器版Qt 源码5.15.2从官方下载的源代码包编译器GCC 9 / Clang系统自带或通过 apt 安装构建工具CMake 3.16 或 qmake根据项目类型选择依赖库见下文清单X11、OpenGL、SSL 等图片插入位置此处可插入一张 Ubuntu 24.04 系统信息截图或 Qt 5.15.2 官方发布页面截图。3. 系统基础依赖安装首先更新系统包列表并安装编译 Qt 所必需的基础开发工具和库。打开终端依次执行以下命令sudoaptupdatesudoaptinstall-ybuild-essential perl python3gitsudoaptinstall-ylibfontconfig1-dev libfreetype6-dev libx11-dev\libx11-xcb-dev libxext-dev libxfixes-dev libxi-dev\libxrender-dev libxcb1-dev libxcb-glx0-dev libxcb-keysyms1-dev\libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev\libxcb-sync0-dev libxcb-xfixes0-dev libxcb-shape0-dev\libxcb-randr0-dev libxcb-render-util0-dev libxcb-util0-dev\libxcb-xinerama0-dev libxcb-xkb-dev libxkbcommon-dev\libxkbcommon-x11-dev图片插入位置此处可插入终端执行sudo apt install命令时的截图。接着安装 OpenGL、SSL 和多媒体相关依赖sudoaptinstall-ylibgl1-mesa-dev libglu1-mesa-devsudoaptinstall-ylibssl-dev libopenal-dev libpulse-dev\libasound2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev图片插入位置可插入依赖安装过程中终端输出的截图。4. 下载 Qt 5.15.2 源码所有 Qt 版本均通过官方下载页提供。请注意Qt 5.15.2 属于 LTS 版本需要持有 Qt 账号才能从官方仓库下载。如果你没有商业许可也可以使用社区维护的镜像或第三方源。4.1 官方下载推荐访问 Qt 官方下载页面https://download.qt.io/archive/qt/5.15/5.15.2/选择single目录下的qt-everywhere-src-5.15.2.tar.xz源码包。直接使用 wget 下载wgethttps://download.qt.io/archive/qt/5.15/5.15.2/single/qt-everywhere-src-5.15.2.tar.xz图片插入位置此处可插入 Qt 下载页面中 5.15.2 源码包高亮显示的截图。4.2 备用下载如果官方下载速度较慢也可以使用国内镜像例如清华大学开源镜像站https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/5.15/5.15.2/single/中科大镜像站https://mirrors.ustc.edu.cn/qtproject/archive/qt/5.15/5.15.2/single/5. 解压并配置编译选项下载完成后解压源码包并进入目录tar-xfqt-everywhere-src-5.15.2.tar.xzcdqt-everywhere-src-5.15.2Qt 源码使用configure脚本进行配置。你可以根据项目需求定制编译选项。下面是一个常用的配置命令它包含了大多数桌面应用所需的模块./configure-prefix/opt/Qt5.15.2\-release\-opensource\-confirm-license\-nomakeexamples\-nomaketests\-skipqtwebengine\-qt-zlib\-qt-libpng\-qt-libjpeg\-qt-freetype\-qt-harfbuzz\-qt-pcre\-xcb\-xcb-xlib\-bundled-xcb-xinput\-ssl\-opengldesktop参数说明-prefix /opt/Qt5.15.2安装路径你可以根据个人习惯修改。-skip qtwebengine跳过体积庞大的 QtWebEngine如果项目不需要可以跳过大幅缩短编译时间。-opengl desktop使用桌面 OpenGL避免依赖 EGL 等额外库。图片插入位置此处可插入终端中运行 configure 命令时的输出截图。6. 编译与安装配置成功后屏幕会显示 Qt 的配置摘要。确认无误后开始编译。编译时间取决于机器性能通常需要 30 分钟到数小时不等。make-j$(nproc)-j$(nproc)会使用所有可用 CPU 核心加速编译。编译完成后安装到指定目录sudomakeinstall图片插入位置可插入编译过程中的进度截图以及安装完成后的提示信息截图。7. 配置环境变量安装完成后为了在终端直接使用qmake或qmake5命令需要将 Qt 的 bin 目录加入PATH环境变量。编辑~/.bashrc文件在末尾添加以下内容exportPATH/opt/Qt5.15.2/bin:$PATHexportLD_LIBRARY_PATH/opt/Qt5.15.2/lib:$LD_LIBRARY_PATHexportQT_PLUGIN_PATH/opt/Qt5.15.2/plugins:$QT_PLUGIN_PATH然后使配置生效source~/.bashrc验证安装是否成功qmake-v如果输出类似QMake version 3.1并显示 Qt 5.15.2 的字样说明配置成功。图片插入位置此处可插入终端执行qmake -v的截图。8. 编译你的 Qt 项目现在你已经拥有了完整的 Qt 5.15.2 编译环境。将 Windows 上开发的 Qt 项目源码拷贝到 Ubuntu 中进入项目目录使用以下命令编译如果你使用 qmakeqmake your_project.promake如果项目使用 CMakemkdirbuildcdbuild cmake..-DCMAKE_PREFIX_PATH/opt/Qt5.15.2make如果编译过程中报错缺少某些模块请根据报错信息重新运行 Qt 的configure并添加相应模块再重新编译 Qt 本身。图片插入位置此处可插入编译自己项目时的终端输出截图。9. 常见问题与排错9.1 找不到qmake命令确保环境变量已正确设置并重新打开终端或执行source ~/.bashrc。9.2 缺少libxcb相关库在 Ubuntu 24.04 中默认的libxcb库可能版本较新如果 Qt 5.15.2 配置时仍然提示找不到可以尝试安装libxcb-util1等早期版本或者使用-qt-xcb选项让 Qt 自带编译一份 xcb 支持。9.3 编译qtwebengine失败如果项目不需要 WebEngine强烈建议在配置时使用-skip qtwebengine跳过。如果确实需要可以提前安装libnss3-dev、libnspr4-dev等依赖并参考 Qt 官方文档。图片插入位置可插入典型错误提示的截图或排错成功的终端界面。10. 总结本文详细介绍了在 Ubuntu 24.04 中编译 Qt 5.15.2 项目的完整流程包括系统依赖安装、源码下载、配置、编译、环境变量设置以及项目编译实操。通过以上步骤你可以顺利地将 Windows 上开发的 Qt 项目迁移到 Linux 平台进行编译和部署。如果你在操作过程中遇到任何问题欢迎在评论区留言交流。图片插入位置文末可插入一张编译成功的项目运行截图作为成果展示。

相关新闻

3分钟掌握Mac微信防撤回:为什么你需要这款本地化神器

3分钟掌握Mac微信防撤回:为什么你需要这款本地化神器

3分钟掌握Mac微信防撤回:为什么你需要这款本地化神器 【免费下载链接】WeChatIntercept 微信防撤回插件,一键安装,MAC可用,支持最新v4.1.10微信 项目地址: https://gitcode.com/gh_mirrors/we/WeChatIntercept 还在为重要消…

2026/8/9 10:50:56 阅读更多 →
VibeCoding实时同步工作台:AI编程助手的结构化协作新范式

VibeCoding实时同步工作台:AI编程助手的结构化协作新范式

这次我们来看一个名为 VibeCoding 的项目,它主打“实时同步的工作台”概念。简单来说,这不是一个传统的本地AI模型部署工具,而是一个集成在智能代码编辑器(如 Cursor)中的AI辅助开发环境。它的核心价值在于&#xff0c…

2026/8/9 10:50:56 阅读更多 →
Windows防休眠工具终极指南:告别自动锁屏的智能解决方案

Windows防休眠工具终极指南:告别自动锁屏的智能解决方案

Windows防休眠工具终极指南:告别自动锁屏的智能解决方案 【免费下载链接】NoSleep Lightweight Windows utility to prevent screen locking 项目地址: https://gitcode.com/gh_mirrors/nos/NoSleep 你是否经历过这些令人崩溃的瞬间?正在向客户演…

2026/8/9 10:50:56 阅读更多 →

最新新闻

FFmpeg 推流到底做了什么?从 avformat_open_input 到 av_write_frame 的完整链路拆解

FFmpeg 推流到底做了什么?从 avformat_open_input 到 av_write_frame 的完整链路拆解

目录 一、先给结论:推流只有 4 个阶段 二、完整调用流程(标准 RTMP 推流版) Step 0:全局一次(程序生命周期) Step 1:打开“输入源”(文件 / 设备) Step 2&#xff1…

2026/8/9 11:39:22 阅读更多 →
Matplotlib柱状图数据精确显示问题与解决方案

Matplotlib柱状图数据精确显示问题与解决方案

1. 问题现象与背景分析 最近在数据分析项目中遇到一个奇怪现象:使用matplotlib的plt.bar绘制柱状图时,图表显示的数据值与实际传入的数值存在明显偏差。比如传入[10,20,30]的数据,柱状图高度却显示为[9.5,19.5,29.5]左右。这种显示失真在需要…

2026/8/9 11:39:22 阅读更多 →
IvorySQL 5.3发布:基于PostgreSQL 18.3内核的企业级增强与全场景适配

IvorySQL 5.3发布:基于PostgreSQL 18.3内核的企业级增强与全场景适配

1. 项目概述:IvorySQL 5.3的定位与价值最近数据库圈子里有个消息挺值得关注的,IvorySQL 5.3正式发布了。如果你对PostgreSQL生态比较熟悉,或者正在寻找一个更贴合国内应用场景、功能更强大的开源关系型数据库,那这个版本绝对值得你…

2026/8/9 11:39:22 阅读更多 →
OceanBase统一数据底座:如何支撑3000万用户AI推荐与交易混合负载

OceanBase统一数据底座:如何支撑3000万用户AI推荐与交易混合负载

最近在调研企业级数据库选型时,发现很多团队在评估传统数据库与新兴AI应用结合的可行性时,常常陷入两难:一方面,传统关系型数据库的事务和一致性能力是业务基石;另一方面,AI应用对向量检索、高并发实时分析…

2026/8/9 11:39:22 阅读更多 →
Halcyon Video部署指南:为Plex/Jellyfin构建专属3D电影库

Halcyon Video部署指南:为Plex/Jellyfin构建专属3D电影库

在搭建个人媒体库时,你是否遇到过这样的困扰:辛辛苦苦下载的3D电影,无论是SBS(左右格式)还是OU(上下格式),在Plex、Jellyfin或Emby等主流媒体服务器中,都无法被正确识别为…

2026/8/9 11:39:22 阅读更多 →
深入解析代理模式:原理、实现与应用场景

深入解析代理模式:原理、实现与应用场景

1. 代理模式核心概念解析 代理模式(Proxy Pattern)是结构型设计模式中最具实用性的模式之一,它通过引入代理对象来控制对原始对象的访问。这种控制在软件开发中极为常见,比如远程方法调用(RMI)的stub对象、…

2026/8/9 11:38:21 阅读更多 →

日新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/8 17:02:44 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/9 0:45:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/8 17:02:44 阅读更多 →