Qt LGPL许可证例外?

时间:2009-08-31 11:02:36

标签: qt licensing lgpl

我正在使用Qt/Mfc Migration Framework开始将一些UI代码从MFC转换为Qt。我想知道我是否必须将Qt迁移代码保存在一个单独的库中,或者是否可以将它包含在我的项目中。为了做到这一点,我将不得不稍微修改它(例如添加#include“stdafx.h”并更改其他一些包含路径)。 Qt LGPL异常(也用于迁移框架)读作:

  

诺基亚Qt LGPL Exception 1.0版

     

作为GNU宽通用公共许可证的特殊例外   版本2.1,“使用库的工作”的目标代码形式   可以合并来自头文件的材料   图书馆。您可以根据您的条款分发此类目标代码   选择,但所包含的材料(i)不超过   超过图书馆总面积的5%; (ii)仅限于   数值参数,数据结构布局,访问器,宏,   内联函数和模板。

我会触发许可证还是我还在绿色?

2 个答案:

答案 0 :(得分:4)

要么我误解了你想做什么,要么你显然不允许这样做。

你说你想“在我的项目中包含Qt代码”,这意味着你想要将他们的整个库(或你正在使用的所有部分)链接到你自己的模块中,而不是将它保存在单独的DLL。

但条款说你可以“合并来自头文件的材料”(我的重点)而不是主库。

并且他们说“假设所包含的材料(i)不超过图书馆总面积的5%”,整个图书馆。

他们说“仅限于数字参数,数据结构布局,访问器,宏,内联函数和模板”,不是库的任何主要代码。

对我来说看起来很明显,但我误会了什么?

答案 1 :(得分:1)

如果要在LGPL条款下使用Qt解决方案的任何组件,则必须将其构建为DLL。无论你是否修改它都无关紧要。