如何确定应用程序中应包含哪些DLL?我从哪里得到它们?我正在运行Windows,但我也想知道如果我想发布Linux版本应该怎么做.
解决方法
您可以使用依赖性walker来查看您应该发布的Qt库(或其他).这是Visual Studio附带的depends.exe可执行文件,但您可以从以下位置单独下载:http://www.dependencywalker.com/
将您的应用程序加载到其中,它将列出运行时期望的所有模块.您可能还必须提供与您构建可执行文件的编译器兼容的Visual C运行时可再发行组件(如果它是VC).
请注意,依赖性walker不会考虑像Qt插件这样的东西.这方面的一个例子是QtAssistant系统(用于帮助菜单类型的功能),从Qt4开始依赖于Qt的sqlite功能,它通常构建为插件(如果我记得,则为qtsqlite4.dll).
对于Linux:
由于Linux发行版中存在更大的差异,因此这更为棘手.如果你想发布源代码,你当然可以使用GNU构建系统,但是如果你要发送二进制文件,并且想要支持各种发行版,你可能最好为你想要发布的每个平台构建软件包.
在我过去,我工作的公司转而使用cmake
,在设置了所有项目和构建文件之后,使用它来为不同的操作系统生成构建和包.在Windows上,这意味着与Inno Setup挂钩,对于类Unix系统,cmake知道如何生成可安装shell脚本之类的东西.绝对让生活变得更轻松.
我们的QA部门将在我们支持的平台的虚拟机实例中测试我们的软件,完全清理,并查看是否有任何遗漏.
原文地址:https://www.jb51.cc/c/111163.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。