Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1413940
  • 博文数量: 241
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 2253
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-11 22:27
个人简介

--

文章分类

全部博文(241)

文章存档

2021年(3)

2019年(6)

2018年(1)

2017年(9)

2016年(21)

2015年(50)

2014年(125)

2013年(26)

我的朋友

分类: Windows平台

2017-03-26 17:20:34

 当我们用QT写好了一个软件,要把你的程序分享出去的时候,不可能把编译的目录拷贝给别人去运行。编译好的程序应该是一个主程序,加一些资源文件,再加一些动态链接库,高大上一些的还可以做一个安装文件。

QT开发的程序发布的时候经常采用两种方式:

方法一: 静态编译,可生成单一的可执行文件。
这种方法,静态编译成功,但是直接运行exe可执行文件还是会报dll找不到错误,一时解决不了该问题,而且有个问题,静态编译需要一开始选择编译的组件(web png等等),所以一开始就全部组件全部编译,不然就要新增组件的时候就要重新编译一次,感觉还是不够灵活,而且编译出来还是有问题,可能是中间某个步骤存在遗漏。
参考:https://blog.csdn.net/wsj18808050/article/details/72862478

方法二:动态编译,需同时附上需要的dll文件。
这个方法是比较灵活,不需要静态编译的麻烦问题,环节多了问题点概率也会大。
但是我们如何解决打包发布的问题呢?最终找到一个解决方案:windeployqt + Enigma Virtual Box


简单步骤:
(1)将exe放到单独文件
(2)在exe目录下,拷贝依赖的dll  windeployqt hellomw.exe
(3)Enigma Virtual Box 打发布大包:

参考
https://www.cnblogs.com/findumars/p/5574264.html


阅读(2704) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~