0

我们有一个使用 Qt 的商业 Windows 应用程序。

我的描述会非常简单,因为我必须有一个明确的答案。

在编译时我们使用 Qt *.lib 文件

我们的编译结果是一个 *.exe 文件,我们打包到安装程序中并发送给客户。这个 *.exe 文件依赖于 Qt 中的 *.DLL 文件。

在运行时使用 Qt 的 *.dll 文件

我的问题是:

  1. 我可以在我的安装程序中合法地捆绑 Qt *.dll 文件吗?
  2. 我可以合法地捆绑我的最终 *.exe 文件,即使它的编译/链接取决于 Qt *.lib 文件吗?
4

2 回答 2

2

两者都是允许的。您应该特别注意 LGPL 2.1 的第 6 节。您必须允许对您的封闭源应用程序进行私人修改和逆向工程。您可能需要选项 6b,在您的情况下,这意味着用户可以安装修改后的 QT DLL。伊纳尔。

于 2010-06-11T16:47:27.577 回答
0

1) 我可以在我的安装程序中合法地捆绑 QT *.dll 文件吗?

这是推荐的解决方案——它允许用户轻松升级到更高版本的 Qt。

2) 我可以合法地捆绑我的最终 *.EXE 文件,即使它的编译/链接取决于 QT *.LIB 文件

您的意思是您使用 Qt 存根 .libs 来构建 dll 版本还是静态链接 exe(不需要 Qt DLL)?必须可以重新链接 Qt。如果您静态链接 Qt,这可能意味着您必须使应用程序的对象或原始库版本可用(取决于您的操作系统)

于 2010-06-11T16:50:40.827 回答