23

我已经阅读了 LGPL 许可证,但它太复杂了,以至于我无法弄清楚我的问题的答案。

我想在我的项目中使用 LGPL 库。LGPL 库中不会进行任何更改。该项目是注册用户使用的网站应用程序。注册用户不收取使用该网站的费用。

所以我的问题是我可以在这种情况下使用 LGPL 库吗?

4

5 回答 5

28

首先,您绝对可以使用该库。是否愿意,是一个单独的问题。

如果您不修改源代码,不静态链接到库,或者依赖库的内部数据结构,那么您不必将应用程序的源代码分发给从您​​那里获取二进制文件的任何人,但是您必须分发库的原始源代码。

如果您确实修改了源代码,但没有静态链接到库,或者依赖于库的内部数据结构,那么您不必将应用程序的源代码分发给从您​​那里获取二进制文件的任何人,但您必须分发修改后的库源代码。

如果您静态链接到库,或者依赖库的内部数据结构,那么您必须将应用程序的源代码分发给从您​​那里获取二进制文件的任何人,并且您必须分发原始(或修改,如果适用)库的源代码。

如果您不分发二进制文件,或者您可以接受上述限制,那么您可以愉快地使用该库。

HTH。

于 2009-05-28T07:45:06.027 回答
11

如果您不分发您的 Web 应用程序,而只是托管它并提供对它的访问(即人们只是使用他们的浏览器),那么您可以使用 LGPL 库。根据(L)GPL,授予某人访问权限不是分发。您甚至可以通过这种方式使用 GPL 库和代码。您甚至可以更改这些库。因为它不是分发版,所以你可以做任何你想做的事,而且你不需要泄露源代码。

唯一不能使用的库是那些获得 AGPL(Affero 通用公共许可证)许可的库。AGPL 与 GPL 类似,但明确要求如果您提供对托管应用程序的访问权限,则还需要分发源代码。这意味着,您网站的访问者需要能够下载网站的源代码。因此,如果您使用 AGPL 库,那么您需要让您的用户能够下载您的 Web 应用程序的整个源代码。

免责声明:我不是律师。

于 2009-05-28T07:36:17.730 回答
4

如果您不分发程序,您可以在不分发源代码的情况下使用它。您的用户是在下载 Web 客户端程序还是一切都是服务器端的?

如果是客户端,则需要动态链接库以避免需要发布源代码。但是,您仍然必须遵守协议来链接或托管库的源代码(我不确定您是否需要两者都做或只做 1 个)。

于 2009-05-28T07:12:12.023 回答
4

LGPL 许可证摘要:

专有软件链接- 允许(因为链接到库的软件不被视为衍生作品)。

“工作”的分发- 允许但有一些限制:您必须提供分布式 LGPL 库的源代码并进行修改(如果有),应允许第三方更改 LGPL 库,如果 BC,您的应用程序/lib 仍应使用修改后的 LGPL lib/app。

通过更改重新分发代码- 仅当衍生产品是 GNU LGPL 或 GNU GPL 时。

与 GNU GPL 兼容- 是

所以总而言之,你应该没问题。

于 2009-05-28T07:37:59.897 回答
3

是的。你可以。

于 2009-05-28T07:36:23.020 回答