码迷,mamicode.com
首页 > 其他好文 > 详细

QT5.4程序发布

时间:2015-05-25 16:39:50      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:qt5-发布程序

使用平台:win7(64位) + Qt5.4.1 + QtCreator3.3.1

*本文所提到工具和Qt5.4常用依赖库已上传
传送门:http://download.csdn.net/detail/echojiangyq/8737003*


这个月公司对所有人员按照产品进行了分组,以后只负责此类产品的事务,手头的事情交接完后,这段时间安卓的代码还不需要维护,刚好组里要做一个桌面级的产测工具,就临时决定用QT写一个,到现在刚好一周。Qt程序编写起来很省力,发布时却着实让人头疼了一把,很多Dll都要自己手动甄选然后添加到包里,太不方便了,而网上的文章大多人云亦云,不太靠谱。下面记录下来备忘,也希望能帮到其他的小伙伴。

1.分析依赖库
这一步,网上普遍推荐使用 Dependency Walker,工具本身很强大,但是对于仅仅想使用它找出依赖库的小白来说,简直被虐哭了好嘛–。需要逐一找到以来的库,然后查看路径,拷贝到目标路径(自己exe所在的目录)下。
技术分享

推荐使用微软的ProcessExplorer工具。可以清楚的看到引用了哪些位置的哪些库。
技术分享
将除了plugins目录下的库之外的所有dll拷贝到目标路径,plugins目录的比较特殊,需要保持其目录结构,新建一个文件夹如“my_plugins”,将文件连带目录一起拷贝到这个文件夹中。
技术分享
在Application中设置读取库的路径,让app自己去这个路径找依赖库。

 QApplication::addLibraryPath("./my_plugins");

2.程序封包发布
Qt5相比Qt4依赖的dll很杂乱,为了避免用户误删dll导致程序不能正常运行,一般推荐进行封包。这儿有两种方式,1.打包成单文件,2.制作安装包。
1.打包成单文件
使用Enigma Virtual Box工具,打包很顺利,问题在于生成的文件被360杀毒软件检测未木马病毒(尴尬),虽然我们可以添加忽略,但是对用户而言这种误导对我们的程序而言绝对是致命的。推荐用这个软件打包来进行自测,但是不推荐用它发布程序。
技术分享
技术分享

2.制作安装包
使用Inno Setup compiler工具,制作安装包很顺利包,让我们的程序更正规些,可惜只有英文版的界面。使用方法请自行检索。

3.常用依赖库
小伙伴们可以按照名称自行搜索。

1.核心库(必须添加的)

Qt5Core.dll
Qt5Gui.dll
Qt5Widgets.dll

2.网络库

Qt5Network.dll

2.ICU依赖库(Unicode工具)

icudt53.dll
icuin53.dll
icuuc53.dll

3.插件库(平台、图片处理、数据库…)

bearer目录(网络编程需要添加)
imageformats目录(图片处理需要添加)
platforms目录(windows下运行必须添加)

4.EGL依赖库

libEGL.dll
libGLESv2.dll

5.mingw依赖库

libstdc++-6.dll
libgcc_s_dw2-1.dll
libwinpthread-1.dll

6.其他

(QtCreator\bin目录下,https编程需要添加)
ssleay32.dll
libeay32.dll

QT5.4程序发布

标签:qt5-发布程序

原文地址:http://blog.csdn.net/echojiangyq_fight/article/details/45970475

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!