【文章】vs2015使用qt静态库5.7

[复制链接]

该用户从未签到

2380

主题

2433

帖子

9139

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9139
QQ
跳转到指定楼层
楼主
发表于 2017-7-15 23:40:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

想要查看内容赶紧注册登陆吧!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
vs2015使用qt静态库5.7
MFC库现在基本上没落了, 用的人越来越少,现在一般做GUI开发都是使用Qt, Qt这个东西实现比MFC不知道高到哪里去了, 使用起来更符合直觉, 学起来更简单,可惜了没有一个好爹, 一直没有火起来!!
Qt这个GUI库还是比较好用的, 只是在Windows上没有办法静态编译,每次发布都要带一堆的东西, 比较恶心!!这两天实在受不了了, 倒腾了一下Qt的静态编译。
1.下载Qt静态库
虽然Qt官方没有发布Qt的静态编译版本, 但是网上有爱好者自己把Qt的各个版本静态库编译好了, 直接下载就可以用。 省去了自己编译的麻烦!!
http://www.npcglib.org/~stathis/blog/precompiled-qt4-qt5/
编译的版本算是比较完整的, 我下载的是
Qt5 v5.7.0 (MSVC2015)
下载然后配置项目。
2.安装Qt5 Package
在vs2015的“扩展和更新”中寻找《Qt5Package》这个扩展,或者在下面网站下载然后安装,并重启
http://download.qt.io/development_releases/vsaddin/
打开扩展QT5,配置QT静态库中的bin目录,然后Reinstall template……
3.配置项目
虽然利用扩展给我们创建了一个项目模版,但是这个模版只能使用qt的动态库,静态库无法使用, 如果想编译静态编译,需要配置以下信息:
首先,在“链接器”-》“常规”-》“附加库目录”-》添加《$(QTDIR)\plugins\platforms》这个目录,即平台扩展静态库。
在“链接器”-》“输入”-》“附加依赖项”-》新增下面这些库
release 版本
qtmain.lib
Qt5Core.lib
Qt5Gui.lib
Qt5Widgets.lib
//—————————————————————————
Qt5PlatformSupport.lib
qminimal.lib
qoffscreen.lib
qwindows.lib
qtfreetype.lib
qtharfbuzzng.lib
qtpcre.lib
imm32.lib
winmm.lib
opengl32.lib
ws2_32.lib
debug
qtmaind.lib
Qt5Cored.lib
Qt5Guid.lib
Qt5Widgetsd.lib
//—————————————————————————
Qt5PlatformSupportd.lib
qminimald.lib
qoffscreend.lib
qwindowsd.lib
qtfreetyped.lib
qtharfbuzzngd.lib
qtpcred.lib
imm32.lib
winmm.lib
opengl32.lib
ws2_32.lib
4 文件依赖
在项目中找到main.cpp这个文件,在开头插入下面的代码,即可导入平台扩展静态库的头文件
#include <QtPlugin>
Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin)
如果是release版本,要在“代码生成”-》“运行库”,选择MT,debug为MTD
如果要兼容xp,平台工具集-》选择《v140_xp》
5 附加目录
首先,在“链接器”-》“常规”-》“附加库目录”-》添加《$(QTDIR)\plugins\platforms》这个目录,即平台扩展静态库
在C/C++->常规-》附加包含目录-》加入下面4个路径
$(QTDIR)\include\QtCore
$(QTDIR)\include\QtGui
$(QTDIR)\include\QtWidgets
$(QTDIR)\include\QtPlatformSupport
这样做完基本上就可以在windows上编译出来静态版本的Qt程序了, 只有一个exe不需要依赖一堆dll。 但是编译出来的文件也不小, 我使用x64版本的vs2015 debug版本编译出来20M release编译出来10M。。。。。 看来想要更下只能使用upx压缩一下了!
6.Qt Creator配置
如果是用QtCreator的话, 就比较简单了, 只需要添加一个版本,选项》构建套件和编译器里面添加一个配置, 然后在新建项目的时候选择我们安装的构建套件和编译器就行!
参考链接
http://blog.csdn.net/wyansai/article/details/51178631http://blog.csdn.net/wsj18808050/article/details/50909381
文章发表于 2016-12-30 15:58:08, 所属分类
SDK编程
。您可以通过订阅
RSS 2.0
来跟踪该文章的评论。 本文Trackback地址:
http://www.joenchen.com/archives/1264/trackback

网友评论:

joen
2017-01-03 16:19:11
说:
//源代码编码必须是: UTF-8(BOM)
#if _MSC_VER >= 1600
#pragma execution_character_set(“utf-8”)
#endif
发表评论
昵称 (必填)
邮箱 (不会被公布) (必填)
网站
Verify Code

赞 评论转发

分享到:  QQ好友和群QQ好友和群
收藏收藏
回复

使用道具 举报

快速回复高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表