通过Vcpkg直接安装Qt静态链接免编译的方式

news2024/12/24 15:33:35

Vcpkg支持自动编译Qt静态链接版,大约只需要30min左右,解决编译困扰和配置环境带来的各种影响。

一、查找Qt包

https://vcpkg.io/en/packages

输入qt5可找到qt5版本,如果需要安装最新的qt6,可直接输入qt,如下:

二、修改环境变量

注意,QT安装完后非常大,会占用C盘archives的空间。

建议配置下环境变量把缓存关掉避免占用C盘空间(需要先重启下电脑变量生效,再后续步骤):

VCPKG_FEATURE_FLAGS设置为-binarycaching

三、安装选择

 只是开发简单GUI程序, 只需要qt-base即可,我安装的是qt5-base,依赖少些:

vcpkg install qt5-base

由于我需要静态编译版本,所以:

vcpkg install qt5-base:x64-windows-static

注意,如果弄不清楚qt和qt-base的区别,可以到步骤一自己查看下。

耐心等待安装完成,花费26分钟,还是比较快的。

四、安装并配置设计工具Qt Designer等

如果你安装的是完整版,不是qt-base,这一步不需要。这个步骤大概耗时15分钟。

vcpkg install qt5-tools:x64-windows-static

       添加Qt Designer到Qt VS Tools支持编辑UI文件(这一步可以后续再做)

路径:\vcpkg\buildtrees\qt5-tools\x64-windows-static-rel\bin

把路径下designer.exe放到qt5-base\x64-windows-static-dbg\bin和x64-windows-static-rel\bin下。

对于linguist也是一样的步骤。

添加完成后效果如下:

支持正常编辑UI文件,如果不配做Designer,将无法使用编辑器。


五、配置Qt VS Tools的的Qmake依赖路径

位于buildtres下面:

\vcpkg\buildtrees\qt5-base\x64-windows-static-rel\bin

\vcpkg\buildtrees\qt5-base\x64-windows-static-dbg\bin

注意,如果项目此前已经使用过之前的Qt,记得切换。

六、编译和运行效果

编译后的空Demo程序大概15MB左右,UPX压缩后可以达到6M左右,不需要Qt依赖

七、Include的说明

需要增加Qt5前缀:vcpkg\installed\x64-windows-static\include\qt5

qt6版本同理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1018454.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

操作系统存储器章节知识梳理

🔥🔥宏夏Coding网站,致力于为编程学习者、互联网求职者提供最需要的内容!网站内容包括求职秘籍,葵花宝典(学习笔记),资源推荐等内容。在线阅读:https://hongxiac.com&…

关于阻抗不连续的原因

1、连线中的分支结构 信号传输到分支结构处,表现出的是两条电路并联的效果,会导致阻抗的不连续问题。典型的就是菊花链结构。 2、参考平面的宽度 一般情况下参考平面都是很宽且连续的,但有的时候,参考平面会被反焊盘给掏空…

FPGA/数字IC(芯海科技2022)面试题 2(解析版)

以下仅为学习参考(非原创),如有疑惑欢迎评论区指出! 一、单选题(共20题,每题3分,共60分) 1. D触发器:Tsetup3ns,Thold1ns,Tck2q1ns, 该D触发器最大可运行时…

笔记1.5:计算机网络体系结构

从功能上描述计算机网络结构 分层结构 每层遵循某个网络协议完成本层功能 基本概念 实体:表示任何可发送或接收信息的硬件或软件进程。 协议是控制两个对等实体进行通信的规则的集合,协议是水平的。 任一层实体需要使用下层服务,遵循本层…

Linux 下的 10 个 PDF 软件

本文[1]是我们正在进行的有关 Linux 顶级工具系列的延续,在本系列中,我们将向您介绍最著名的 Linux 系统开源工具。 随着互联网上越来越多地使用可移植文档格式 (PDF) 文件来获取在线书籍和其他相关文档,拥有 PDF 查看器/阅读器对于桌面 Linu…

Wireshark分析HTTPS流量

1、设置环境变量 (在不抓包的时候要把这个环境变量删掉,日志太多可能) # 变量名称 SSLKEYLOGFILE # 变量值:日志文件存储的路径 D:\data\ssl\keylog.log2、 配置配置Wireshark软件文件路径 配置上之后一定要重启,不重启没效果。

Math_2023_09_17.java

package homework;import util.StringUtil;/*** 八位数: 2 _ _ _ _ _ _ 5* 每相邻三个数字和为11** author ZengWenFeng* email 117791303qq.com* mobile 13805029595* date 2023.09.17*/ public class Math_2023_09_17 { public static boolean isOk(String str, int sum){in…

Apache Hive概述,模拟实现Hive功能,Hive基础架构

1、Apache Hive 概述 1.1、分布式SQL计算 对数据进行统计分析,SQL是目前最为方便的编程工具。 大数据体系中充斥着非常多的统计分析场景 所以,使用SQL去处理数据,在大数据中也是有极大的需求的。 MapReduce支持程序开发(Java…

88 # express 应用和路由的分离

上一节实现了应用和创建应用的分离,这一节来实现应用和路由的分离 application.js const http require("http"); const Router require("./router");function Application() {this._router new Router(); }Application.prototype.get fun…

Learn Prompt-ChatGPT 精选案例:内容总结

ChatGPT 可以通过分析内容并生成一个浓缩版本来总结文本。这对节省时间和精力很有帮助,特别是在阅读长篇文章、研究论文或报告时。 通用总结​ 你所要做的就是把具体的文字复制并粘贴到提示中,并要求ChatGPT对所选文本进行简化总结。这里我们参考opena…

[尚硅谷React笔记]——第1章 React简介

目录: 第1章 React简介 React的基本使用:虚拟DOM的两种创建方式: 使用jsx创建虚拟DOM使用js创建虚拟DOM(一般不用)虚拟DOM与真实DOM:React JSX:JSX练习:模块与组件、模块化与组件化的理解 模块组件模块化组件化 第1章 React简介 中文官网: …

【微信小程序】关于页面中引入背景的两种方式

| 布局设计思路 <view class"about"> <view class"pubilcTitle"><view class"en"></view><view class"cn"></view><view class"line"></view> </view> <view cl…

linux基础(2)

目录 一.vi\vim编译器介绍1.三种模式2.vim的使用3.快捷键的使用 二.which&#xff0c;find命令三.grep命令四.wc命令五.管道符六.echo命令1.重定向符 七.tail命令 一.vi\vim编译器介绍 vim\vi是linux中最经典的文本编译器 同图形化界面中的文本编译器是一样的&#xff0c;vi是…

记录:移动设备软件开发(搭建Android开发环建)

目录 前言安装Android Studio 前言 Android是一种基于Linux的开放源代码操作系统&#xff0c;主要用于移动设备&#xff0c;如智能手机和平板电脑。Android提供了一个丰富的应用程序框架&#xff0c;允许开发者使用Java语言创建创新的应用程序。为了开发Android应用程序&#…

前 K 个高频元素

题目链接 前 K 个高频元素 题目描述 注意点 k 的取值范围是 [1, 数组中不相同的元素的个数]题目数据保证答案唯一&#xff0c;换句话说&#xff0c;数组中前 k 个高频元素的集合是唯一的返回其中出现频率前 k 高的元素可以按 任意顺序 返回答案 解答思路 使用哈希表存储所…

Go-Python-Java-C-LeetCode高分解法-第六周合集

前言 本题解Go语言部分基于 LeetCode-Go 其他部分基于本人实践学习 个人题解GitHub连接&#xff1a;LeetCode-Go-Python-Java-C Go-Python-Java-C-LeetCode高分解法-第一周合集 Go-Python-Java-C-LeetCode高分解法-第二周合集 Go-Python-Java-C-LeetCode高分解法-第三周合集…

Learn Prompt-为什么用 ChatGPT API?

引用人工智能先驱吴恩达先生说过的话&#xff1a;“一个系统需要的远不止一个提示&#xff08;prompt&#xff09;或者一个对LLM&#xff08;大性语言模型&#xff09;的调用。” API的优点&#xff1a; 集成更深: 通过 API&#xff0c;您可以将 ChatGPT 集成到自己的系统和工…

腾讯云阿里云云服务器 Linux 操作系统 BT 宝塔面板快速建站教程

宝塔面板概述 宝塔面板是一款服务器管理软件&#xff0c;支持Windows和Linux系统&#xff0c;可以通过Web端轻松管理服务器&#xff0c;提升运维效率。总体来说&#xff0c;宝塔面板具有操作简单、功能丰富、安全可靠等特点&#xff0c;是一款非常实用的服务器管理软件。 宝塔…

ElasticSearch(ES)简单介绍

ES简介 Elasticsearch&#xff08;通常简称为ES&#xff09;是一个开源的分布式搜索和分析引擎&#xff0c;旨在处理各种类型的数据&#xff0c;包括结构化、半结构化和非结构化数据。它最初是为全文搜索而设计的&#xff0c;但随着时间的推移&#xff0c;它已经演变成一个功能…

QT:使用行编辑器、文本编辑器、单选按钮、水平布局、垂直布局做一个小项目

widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QLineEdit> //行编辑器 #include <QTextEdit> //文本编辑器 #include <QRadioButton> //单选按钮class Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *pare…