1

感觉像一个愚蠢的问题,但我很难在网上找到答案:如果您在 Linux 机器上进行开发,是否可以将 Qt 应用程序部署到 Windows?似乎答案应该是“是”,但我似乎无法在我的 linux 机器上使用 windeployqt。

如果可能的话,我需要什么额外的资源来做到这一点?

4

1 回答 1

3

是的,这当然是可能的。

  1. 您必须使用针对 Windows 的 MinGW 编译器交叉编译 Qt。

  2. 您必须自己修补和构建 windeployqt。默认情况下,windeployqtg++.exe在路径中寻找。当然,这在 linux 构建主机上毫无意义,因此您必须对其进行调整,以便它找到正确的编译器和运行时库。

  3. 然后,您可以使用跨目标 Qt 构建构建您的应用程序,并deploy使用 windeployqt 将所有必要的工件部署到某个文件夹中。

  4. 要打包已部署的构建,您也可以在 Linux 上运行nsis或运行wix,以获取 Windows 安装程序。您甚至可以签署可执行文件(现在 Windows 需要),有一个名为的开源工具osslsigncode- 它适用于大多数平台,不需要 Windows。

你需要一些时间才能弄清楚这一切。仅在 Windows 上构建并且不要乱用它当然是最简单的。但如果你坚持在 Linux 上构建 - 你当然可以。

于 2021-10-05T05:24:12.737 回答