首先,您必须注意,LGPLv3许可证下不提供所有Qt开源模块。一些模块在GPLv3下可用于开源,例如,第三方组件(如Chromium web引擎)在LGPLv2.1下提供。
当LGPLv3下的Qt模块和库时,您需要履行以下几项义务:
当使用开源软件时,您需要了解并跟踪您在项目中使用的每个示例、源代码片段、模块和库的许可。
您需要向您的用户/客户提供您使用的Qt库的完整源代码,包括您所做或应用的所有修改。或者,您需要提供一份书面报价,说明如何获取源代码。还请注意,这必须由您控制,因此Qt项目或Qt公司提供的源代码链接是不够的。
LGPL允许您将自己的应用程序源代码保密,只要它是“使用”库的工作。这里通常建议使用动态链接。
您的应用程序的用户必须能够根据Qt库的不同版本或修改版本重新链接您的应用软件。对于LGPLv3,还明确指出用户需要能够在其预期目标设备上运行重新链接的二进制文件。您有义务为用户提供所有必要的工具来实现此过程。对于嵌入式设备,这包括向用户提供用于编译库的完整工具链。对于根据LGPLv3许可的部件,您有义务提供关于如何在目标设备上安装修改后的库的完整说明(LGPLv2.1中没有明确说明这一点,尽管根据库的修改版本运行应用程序显然是许可的声明意图)。
使用LGPL许可软件的应用程序或设备的用户必须通过向最终用户提供LGPL许可证的副本并显示关于您使用LGPL授权软件的显著通知来了解其权利。
上述自由不得以任何方式受到其他许可条款的限制。如果申请没有完全遵守上述所有义务,则根本不允许分发。
您还需要确保没有使用任何GPL许可的模块。