当前位置: 首页 > news >正文

Ubuntu环境下Qt5.12.10离线安装与配置全攻略

1. 环境准备:搭建Ubuntu虚拟机

在开始Qt5.12.10的离线安装之前,我们需要一个稳定的Ubuntu环境。很多开发者习惯在Windows系统上通过虚拟机来运行Ubuntu,这样既能保持原有工作环境,又能体验Linux开发。这里我推荐使用VMware Workstation Player,它是免费的虚拟机软件,对个人用户非常友好。

安装VMware后,建议下载Ubuntu 20.04 LTS版本,这个长期支持版本稳定性好,社区支持完善。我实测过从官网下载的ubuntu-20.04.6-desktop-amd64.iso镜像,配合Qt5.12.10运行非常稳定。创建虚拟机时,建议分配至少4GB内存和50GB硬盘空间,这样能确保后续开发流畅进行。

注意:如果启动虚拟机时Windows出现蓝屏,很可能是虚拟机平台功能未启用。解决方法是在Windows控制面板中找到"启用或关闭Windows功能",勾选"虚拟机平台"选项后重启电脑。

2. 文件共享方案选择与配置

离线安装Qt最大的挑战是如何把安装包从Windows主机传输到Ubuntu虚拟机。我尝试过多种方法,发现最可靠的是VMware的共享文件夹功能。相比拖放功能,共享文件夹更稳定,传输大文件时不容易出错。

首先需要在Ubuntu中安装VMware Tools:

sudo apt-get update sudo apt-get install open-vm-tools-desktop

然后在VMware虚拟机设置中添加共享文件夹。我习惯在Windows上创建一个专门用于共享的目录,比如D:\VM_Share。设置完成后,这个文件夹会自动挂载到Ubuntu的/mnt/hgfs/目录下。如果看不到共享文件夹,可以尝试手动挂载:

sudo vmhgfs-fuse .host:/ /mnt/hgfs -o subtype=vmhgfs-fuse,allow_other

3. Qt5.12.10安装包准备与验证

Qt官方提供了完整的离线安装包,我们需要下载qt-opensource-linux-x64-5.12.10.run文件。这个文件大约2.3GB,建议通过官方网站或可信镜像站获取。下载完成后,我习惯用md5sum校验文件完整性:

md5sum qt-opensource-linux-x64-5.12.10.run

正确的MD5值应该是d6d7a6e3a5a5a5a5a5a5a5a5a5a5a5a(示例值,实际请核对官网提供的信息)。

将安装包复制到Ubuntu后,建议放在用户主目录下,这样权限管理更方便。然后需要赋予执行权限:

chmod +x qt-opensource-linux-x64-5.12.10.run

4. 图形化安装过程详解

运行安装程序后,会出现熟悉的Qt安装向导界面:

./qt-opensource-linux-x64-5.12.10.run

安装过程中有几个关键选择需要注意:

  1. 登录Qt账户:即使离线安装也需要登录,如果没有账户可以临时创建一个
  2. 安装路径:建议保持默认路径,这样后续配置环境变量更方便
  3. 组件选择:必须勾选"Desktop gcc 64-bit"组件,这是后续开发的核心工具链
  4. 同意许可协议:仔细阅读后勾选接受条款

安装完成后,建议先不要启动Qt Creator,因为我们还需要配置一些必要的依赖项。

5. 编译环境与依赖项配置

Qt5.12.10需要完整的GCC工具链和图形库支持。首先安装基础编译工具:

sudo apt update sudo apt install build-essential

验证GCC是否安装成功:

gcc --version

应该能看到类似gcc (Ubuntu 9.4.0-1ubuntu1~20.04) 9.4.0的输出。

接下来安装图形开发库,这些是Qt运行时的必要依赖:

sudo apt install libgl1-mesa-dev libx11-dev libxext-dev libxrender-dev \ libxrandr-dev libxcursor-dev libxi-dev libxtst-dev libfontconfig1-dev

6. 环境变量精准配置

环境变量配置是Qt开发中最容易出错的环节。我们需要编辑.bashrc文件:

nano ~/.bashrc

在文件末尾添加以下内容(注意路径要替换为你实际的安装路径):

export QTDIR=/home/你的用户名/Qt5.12.10/5.12.10/gcc_64 export PATH=$QTDIR/bin:$PATH export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

保存后使配置立即生效:

source ~/.bashrc

验证环境变量是否配置正确:

qmake -v

应该能看到Qt 5.12.10的版本信息。

7. 常见问题排查与解决

在实际安装过程中,我遇到过几个典型问题,这里分享解决方案:

问题1:运行Qt程序报GLIBC版本错误这是因为系统GLIBC版本过低。解决方法:

sudo apt upgrade libc6

问题2:Qt Creator无法创建新项目通常是权限问题,尝试:

sudo chown -R 你的用户名:你的用户名 ~/Qt5.12.10

问题3:编译时报缺少头文件可能是开发库没装全,可以安装:

sudo apt install libxcb-xinerama0-dev libxcb-icccm4-dev libxcb-image0-dev \ libxcb-keysyms1-dev libxcb-render-util0-dev

8. 开发环境验证与测试

最后,我们来验证整个环境是否配置成功。创建一个简单的Qt Widgets项目:

mkdir ~/QtTest && cd ~/QtTest qmake -project echo "QT += widgets" >> QtTest.pro qmake make

运行生成的可执行文件:

./QtTest

如果能看到一个空白窗口,说明Qt环境已经配置成功。至此,Ubuntu下的Qt5.12.10离线安装与配置就全部完成了。

http://www.jsqmd.com/news/561627/

相关文章:

  • Go + Vue 打包成一个单二进制的后台系统,我做了个后台脚手架
  • 2026降AI率工具红黑榜:降AI率软件怎么选?用过才敢说!
  • 三、formily的字段联动实战:基于vue3+JsonSchema+ant-design-vue的动态表单设计
  • Windows系统,pytest 参数化中文乱码(显示 \u 编码)解决方案
  • SecGPT-14B镜像免配置:内置模型路径固定,便于Docker volume持久化备份
  • 如何解决多设备电量焦虑?Mac全设备电量监控方案
  • 从课堂实验到小项目:用Multisim仿真一个简易智能表决器(74LS138实战)
  • 虚拟串口工具在嵌入式开发中的应用与调试技巧
  • 2026年3月东光备受关注的新型锅炉订制厂家推荐,蒸汽锅炉/锅炉/导热油锅炉,锅炉品牌哪个好 - 品牌推荐师
  • Remote-SSH连接卡在下载vscode-server?3步搞定离线安装(附国内镜像地址)
  • 中山展示柜真能帮助提升店面形象吗?
  • Java 25虚拟线程资源隔离配置:从ClassLoader隔离到ScopedValue落地,7个必须验证的生产Checklist
  • Pixel Fashion Atelier效果实测:512x768竖构图在小红书平台传播的完播率数据
  • 2026年有机玻璃定制风向标:国内靠谱厂商集合,有机玻璃定制/亚克力装置/有机玻璃加工,有机玻璃定制源头厂家哪家好 - 品牌推荐师
  • 2026年国内评价高的机械舱制造厂家口碑推荐分析,诚信的机械舱忠军装备诚信务实提供高性价比服务 - 品牌推荐师
  • 题解:CF2211D AND-array
  • OpCore Simplify:15分钟完成黑苹果EFI配置的智能工具
  • 2026年3月除蜡水厂家推荐:钢铁不锈钢金属工业除蜡水,高效环保低残留配方,金属表面处理选型指南 - 品牌企业推荐师(官方)
  • HG-ha/MTools完整指南:GPU显存占用监控与AI任务优先级调度
  • Eiten随机矩阵理论应用详解:过滤市场噪声提升投资精度
  • RTKLIB源码解析(五)数据流融合:RINEX、RTCM、NMEA与接收机原始数据的协同处理
  • 口碑车底检查镜公司推荐:2026年选购必看清单,车底检查镜生产厂家哪家好麦盾安全设备满足多元需求 - 品牌推荐师
  • 微服务架构下如何优雅处理Fortify的误报?以Database Access Control为例
  • 3倍效能革命:ComfyUI-TeaCache智能缓存技术重构AI创作流程
  • Windows下用LVGL+ESP-Brookesia开发嵌入式UI:从环境搭建到运行示例的完整指南
  • OpenClaw+GLM-4.7-Flash内容创作:自动生成技术博客草稿
  • 小程序停车场支付并发问题解决方案探索
  • 毕业设计实战:基于SSM的学生宿舍设备报修管理系统设计与实现全攻略
  • Diannao架构解析:AI芯片中的指令集优化与性能突破
  • 秒杀 OpenWebUI!Dify 零代码实现双模型分栏同步流式输出