QT 5.15 源码windows下 msvc编译

目录

1、下载 Qt 源代码

2、安装依赖项

3、配置命令行环境变量

4、构建

5、使用


1、下载 Qt 源代码

Index of /archive/qt/5.15/5.15.8/singleicon-default.png?t=N176https://download.qt.io/archive/qt/5.15/5.15.8/single/ qt-everywhere-opensource-src-5.15.8.zip

        解压后,可以看到有一个readme文件,有一些简短的说明,需要安装依赖,其中configure.bat是构造脚本。

2、安装依赖项

  •      *Perl version 5.12 or later  
  •      *Python version 2.7 or later
  •      *Ruby version 1.9.3 or later

        都从官网下载安装即可

3、配置命令行环境变量

        此处参考文档单独创建bat,内容如下:

REM Set up Microsoft Visual Studio 2017, where <arch> is amd64, x86, etc.
CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat" <arch>
SET _ROOT=C:\Qt\Qt-5
SET PATH=%_ROOT%\qtbase\bin;%_ROOT%\gnuwin32\bin;%PATH%
REM Uncomment the below line when using a git checkout of the source repository
REM SET PATH=%_ROOT%\qtrepotools\bin;%PATH%
SET _ROOT=

其中的脚本路径 vcvarsall.bat 及  _ROOT 路径 及 <arch> 改成自己的。

  • vcvarsall.bat 是一个批处理文件,用于在 Windows 系统上设置 Visual C++ 开发环境,可以搜索 下自己文件在哪;
  • _ROOT路径设置成前面解压后的路径
  • <arch> 这里用了 amd64

4、构建

  •  打开cmd,执行下第3步中的bat,然后cd到前面解压的源码文件夹,执行下面命令,其中 -prefix指定了发布目录 C:\qt\qt5install ,自定义。
configure -prefix C:\qt\qt5 -debug -nomake examples -nomake tests -skip qtwebengine -opensource

        configure更多选项参考Qt Configure Options | Qt 5.15

  • 下一步,命令行输入 nmake,开始编译,会比较慢
nmake
  • 最后,命令行输入 nmake install 一下,就能在前面设置的目录 C:\qt\qt5install 看到最后的成果物了。

5、使用

  • vs新建一个控制台空项目,main.cpp,分别设置包含路径,链接库路径,编译完成后拷贝依赖dll,运行。
#include <qmessagebox.h>
#include <qapplication.h>

int main(int argc, char *argv[])
{
	QApplication a(argc, argv);
	QMessageBox::warning(nullptr, "test", "test");
	return 0;
}
  • 设置包含路径

  •  链接库路径

  •  生成解决方案并拷贝相关依赖

  •  结果,弹窗

 

参考:

Qt for Windows - Building from Source | Qt 5.15

记一次Qt 5.15源码编译 - 知乎

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值