VS2015+Qt5.9.0静态库配置方法

前言

因为本人不习惯使用Qt Creator,因而使用VS2015进行开发。在Qt官网下载【Qt VS Tools】这个工具后,可以正常使用Qt动态库的开发。但这样的话程序打包发布时,需要带上很多的DLL方可正常运行,于是静态编译打包发布便应运而生。

准备工作

  • 我们需要Qt编译好的静态库(静态编译过程有很多教程,这里不再多说)。
  • 安装VS2015。
  • Qt VS Tools插件

正题

  1. 将编译好的Qt静态库添加进来。

  2. 正常新建一个Qt GUI Applications,这个时候,需要将Qt版本切换至静态
    方法:【解决方案管理器中点右键】->【Qt Project Settings】->【version一栏中切换你的Qt静态版本】

  3. OK,现在编译的话,会有一大堆的链接错误。接下来的步骤才是重中之重:

Debug 版

在项目配置属性中:【链接器】->【输入】->【常规】->【附加库目录】中
加入 $(QTDIR)\plugins\platforms

在项目配置属性中:【链接器】->【输入】->【附加依赖项】中,原来只有:
- qtmaind.lib
- Qt5Cored.lib
- Qt5Guid.lib
- Qt5Widgetsd.lib

需要加入以下lib才可以正常编译:
imm32.lib
winmm.lib
opengl32.lib
ws2_32.lib
glu32.lib
qtpcre2d.lib
qwindowsd.lib
qtharfbuzzd.lib
qtlibpngd.lib
qtfreetyped.lib
Qt5ThemeSupportd.lib
Qt5EventDispatcherSupportd.lib
Qt5AccessibilitySupportd.lib
Qt5FontDatabaseSupportd.lib
dwmapi.lib
version.lib
uxtheme.lib

在main.cpp文件中,加入:

#include <QtPlugin>

Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin)

在项目配置属性中:【C/C++】->【代码生成】->【运行库】,
【多线程调试 DLL (/MDd)】 改为 【多线程调试 (/MTd)】

做完以上步骤后,按下F7,是不是很爽呢?一大堆无法解析的外部命令都没了。

Release 版

Release版的和Debug的差不多,只需要把库中带“d”的去掉就可以了。

在项目配置属性中:【链接器】->【输入】->【常规】->【附加库目录】中
加入 $(QTDIR)\plugins\platforms

在项目配置属性中:【链接器】->【输入】->【附加依赖项】中,原来只有:
- qtmain.lib
- Qt5Core.lib
- Qt5Gui.lib
- Qt5Widgets.lib

需要加入以下lib才可以正常编译:
imm32.lib
winmm.lib
opengl32.lib
ws2_32.lib
glu32.lib
qtpcre2.lib
qwindows.lib
qtharfbuzz.lib
qtlibpng.lib
qtfreetype.lib
Qt5ThemeSupport.lib
Qt5EventDispatcherSupport.lib
Qt5AccessibilitySupport.lib
Qt5FontDatabaseSupport.lib
dwmapi.lib
version.lib
uxtheme.lib

在main.cpp文件中,加入:

#include <QtPlugin>

Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin)

在项目配置属性中:【C/C++】->【代码生成】->【运行库】,
【多线程调试 DLL (/MD)】 改为 【多线程调试 (/MT)】

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值