gpt4 book ai didi

c++ - 人们需要什么来运行我的应用程序?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:17:32 25 4
gpt4 key购买 nike

我制作了一个小应用程序并构建了一个发布版本。现在我想把它上传到我的网站。我以前从未用 Qt 做过这件事,所以我不确定我应该在二进制文件中包含什么。

我如何确定哪些 DLL 应该包含在我的应用程序中?我从哪里得到它们?我正在运行 Windows,但我也想知道如果我想发布 Linux 版本我应该做什么。

最佳答案

对于窗口:

您可以使用 dependency walker 来查看您应该发布哪些 Qt 库(或其他库)。这是包含在 Visual Studio 中的 depends.exe 可执行文件,但您可以从以下地址单独下载它:http://www.dependencywalker.com/

将您的应用程序加载到其中,它将列出它在运行时期望的所有模块。您可能还需要发布一个 Visual C++ Runtime Redistributable,它与您构建可执行文件所用的编译器兼容(如果它是 VC++)。

请注意,依赖遍历器不考虑 Qt 的插件之类的东西。这方面的一个例子是 QtAssistant 系统(用于帮助菜单类型的功能),从 Qt4 开始它依赖于 Qt 的 sqlite 功能,它通常作为插件构建(qtsqlite4.dll 如果我记得的话) .

对于 Linux:

这比较棘手,因为 Linux 发行版之间存在更大的差异。如果你想发布源代码,你当然可以使用 GNU 构建系统,但如果你要发布二进制文件,并希望支持各种发行版,你最好为你想要发布的每个平台构建包。


在我过去,我工作的一家公司转而使用 cmake在设置所有项目和构建文件后,使用它为不同的操作系统生成构建和包。在 Windows 上,这意味着 Hook Inno Setup ,对于类 Unix 系统,cmake 知道如何生成可安装的 shell 脚本之类的东西。确实让生活变得更加轻松


我们的 QA 部门会在我们支持的平台的虚拟机实例中测试我们的软件,完全干净,看看是否有任何遗漏。

关于c++ - 人们需要什么来运行我的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4370601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com