【发布时间】:2023-03-17 18:18:01
【问题描述】:
我正在尝试将 Windows 部署和应用程序作为静态,因此单个 exe 文件将包含所有必需的 dll。 因此,当我在 PC 之间分发这个单个 exe 文件时,它会正常工作。
目前,当我通过 windeployqt(包括 QMLs)发布项目时,它会在文件夹中带来一大堆 dll 和 qmls。所以我需要使用 QT 将它们连接在一起(有点像 ILMerge 软件)。
请指导我完成整个过程。
PS:编译器是 MinGW 32b
谢谢
【问题讨论】:
-
来自 Google 的第一个链接 - Creating standalone application
-
@folibis 我当然试过了,但是没有用(没有错误,只是正常的构建)
-
所以,你做错了。顺便说一句,您需要静态构建的商业许可。
-
@folibis 实际上没有。如果您选择 LGPL 许可证,您需要根据 LQPL 分发 Qt 库并允许用户修改和更改它们。但是您仍然可以只为您自己的代码提供已编译的目标代码,并提供有关如何使用用户选择的 Qt 库重新链接程序的说明。这很麻烦,但这是可能的。尽管如此,指向 OP 的有效点,即使使用静态二进制文件,您也需要遵循 LGPL!
标签: qt deployment qml static-libraries static-linking