许可·条件·限制一览
条件
- 版权与许可声明分发时必须附上许可证副本和版权声明。
- 公开源代码分发时必须提供源代码。
- 标明修改如果修改了原作品,必须标明这一事实。
- 相同许可证(库级)库的修改部分必须使用相同许可证,但可能不适用于使用该库的程序。
限制
- 责任限制明确声明不对损害承担责任。
- 无担保明确声明不提供任何担保。
许可·条件·限制分类来源:choosealicense.com(GitHub,MIT 许可证)数据。
这是什么样的许可证
LGPL(GNU Lesser General Public License)3.0 是与 GPL-3.0 同日(2007 年 6 月 29 日)发布的库用许可证。它不是一份独立的完整文件,而是在 GPL-3.0 基础上附加额外许可的形式,原文也以「在 GPL 第 3 版的条件之上附加以下额外许可」开头。核心的额外许可是:使用该库的程序(Combined Work)可以按自己想要的条件分发。对库本身的修改部分,仍须以 LGPL(或 GPL)公开。Qt(可在 LGPL-3.0、GPL、商业许可中选择)是代表性案例。
分发使用该库的程序时(第 4 条)
- 显著告知程序中使用了 LGPL 库且适用 LGPL。
- 同时提供 GPL-3.0 和 LGPL-3.0 的副本。
- 使用户能够替换为修改后的库版本。通常采用动态链接(共享库)即可满足;如果是静态链接,则须提供可重新链接的目标文件等。
- 不得附加禁止为调试此类修改而进行逆向工程的条件。
- 提供库部分的对应源代码;如果是用户产品,还须提供 GPL-3.0 第 6 条规定的安装信息。
常见误解
- 「使用 LGPL 库,应用的源代码也必须公开」 — 不是。只要遵守上述条件,应用就可以不公开。公开义务针对的是库本身的修改部分。
- 「静态链接一律禁止」 — 并不禁止。只是必须提供目标文件等,以便用户替换库并重新链接,因此比较麻烦。
- 「LGPL-3.0 可以用于 GPL-2.0 项目」 — 与 GPL-2.0-only 不兼容。要结合,项目必须能够以 GPL-3.0 分发。
如何应用
按惯例,将 GPL-3.0 原文保存为 COPYING,将 LGPL-3.0 原文保存为 COPYING.LESSER,一起放置(生成器会同时提供这两个文件)。每个源文件中使用把 GNU 声明中的「General Public License」替换为「Lesser General Public License」的文字。SPDX 标识符为 LGPL-3.0-only 或 LGPL-3.0-or-later。
适用场景
适合希望在闭源应用中也被广泛使用、同时希望对库本身的改进能够公开的库。如果想要以文件为单位、更简单的弱著佐权,也可以对比一下 MPL-2.0。对比内容整理在宽松型 vs 著佐权指南中。
LGPL-3.0 代码能放进其他项目吗?
以下是将以此许可证发布的代码合并到下列许可证的项目中一起发布时的一般判定。 在兼容性检查器中查看其他组合 →
| 目标项目 | 判定 | 备注 |
|---|---|---|
| 专有(商业)软件 | 有条件可以 | 可以作为库链接使用,但必须让用户能够替换、重新链接 LGPL 部分,并提供 LGPL 部分的源代码。如果复制代码混合在一起,整个组合作品都必须遵守 (L)GPL 条件。 |
| MIT | 有条件可以 | 可以作为库链接使用,但必须让用户能够替换、重新链接 LGPL 部分,并提供 LGPL 部分的源代码。如果复制代码混合在一起,整个组合作品都必须遵守 (L)GPL 条件。 |
| Apache-2.0 | 有条件可以 | 可以作为库链接使用,但必须让用户能够替换、重新链接 LGPL 部分,并提供 LGPL 部分的源代码。如果复制代码混合在一起,整个组合作品都必须遵守 (L)GPL 条件。 |
| MPL-2.0 | 有条件可以 | 可以作为库链接使用,但必须让用户能够替换、重新链接 LGPL 部分,并提供 LGPL 部分的源代码。如果复制代码混合在一起,整个组合作品都必须遵守 (L)GPL 条件。 |
| LGPL-2.1 | 有条件可以 | 组合作品须按 GPL-3.0 条件发布。 |
| GPL-2.0 | 不可以 | 3.0 版本的代码与 GPL-2.0(only)的条件不相容,无法放入。 |
| GPL-3.0 | 可以 | LGPL-3.0 是在 GPL-3.0 基础上附加额外许可,因此在 GPL-3.0 组合作品中忽略这些额外许可即可。 |
| AGPL-3.0 | 可以 | LGPL-3.0 是在 GPL-3.0 基础上附加额外许可,因此在 GPL-3.0 组合作品中忽略这些额外许可即可。 GPL-3.0 与 AGPL-3.0 各自通过第 13 条允许相互结合。在组合作品中,AGPL 部分的网络源代码提供义务依然保留。 |
本网站内容仅为一般信息,不构成法律意见。实际发布、合同或纠纷的判断,请咨询律师等专业人士。