发布应用程序时的候选者
--- 调试版 (debug) :开发阶段生成的可执行程序
包含了与调试相关的工作信息,体积巨大
执行速度慢,支持断点调试
--- 发布版 (release):最终产品的可执行程序
无任何冗余信息,体积小巧
执行速度快,无法映射到源码调试
程序的库依赖
可执行的程序正常运行需要外部库的支持
因此:发布程序时必须保证所有依赖库都存在
Windows 中可以使用 Depends 工具查看程序的库依赖: http://www.dependencywalker.com/
Linux 中可以使用 ldd 命令查看程序的库依赖
ldd 时 Linux 系统中的一个脚本程序(Shell)
如何在客户机器上
方案一:用户根据提供的使用手册自行部署执行环境 ×
方案二:开发一个专用的部署(安装)程序,部署(安装)程序运行后自行部署执行环境 √
部署(安装)程序的开发
通用的软件开发方式
Installshield 简介
-- 商业系应用软件,功能强大,应有尽有
-- 用于解决 Windows 软件安装包开发的制作工具
-- 官网 :http://www.installshield.com
-- 收费!!
Inno Setup 简介
-- 小巧,简便,精美
-- 以 Pascal 语言作为脚本开发 Windows 部署程序
-- 官网:http://www.jrsoftware.org/isinfo.php
-- 免费!!
NSIS 简介
-- 超轻量级,无任何冗余功能
-- 以专用脚本语言开发 Windows 安装程序
-- 官网:http://nsis.sourceforge.net
-- 免费,开源!!!
Linux 下 Qt 程序发布
方法一:
1、通过 ldd 命令确定程序的库依赖
2、通过 shell 脚本开发部署程序
方法二:
根据具体发行版开发专用部署程序(deb,rpm)