3

我想从两个角度提出这个问题。

作为库开发人员,我不希望我的工作被用于源代码封闭的 Web 应用程序,而大多数 Web 应用程序都是源代码封闭的。(而且它们也没有价值分发,通常网络应用程序是依赖于个人的)。向云计算迈进的趋势,未来PC上运行的软件似乎会越来越少,越来越多的软件将转移到集中式云基础设施上。这意味着,谈论“软件分发”是没有意义的,因为大多数应用程序都是服务器托管的,根本不需要分发。

所以,我想知道 GPL/LGPL 在这种情况下如何保护库开发人员,派生不必分发。

考虑人们如何使用软件?就个人而言,我认为分布式软件和托管软件(网络应用程序)之间没有太大区别。例如,Google DocsMicorost Word。假设Microsoft WordGoogle Docs都使用GPL 库libxyz ,这是否意味着Microsoft Word应该是 GPL-ed 而Google Docs不需要,因为Google Docs没有分发?

其次,作为商业网络应用程序开发人员,我目前可以在我的网络应用程序中使用 LGPL/GPL 库吗?(LGPLv2 或 LGPLv3)我见过很多使用 LGPL 库的网页,虽然我个人不喜欢,但我不知道他们是否违反了许可证。

4

4 回答 4

7

LGPL 本质上是专门设计的,因此LGPL 的库可以在闭源应用程序中使用。

标准 GPL 要求这些应用程序是 GPL 的(或兼容许可),而 LGPL 只要求提供库的源代码。

至少在当前的许可环境中,在您自己的服务器上运行的应用程序没有“分发”它们的二进制文件(只有从中输出的页面),因此对分发的限制不适用。然而,客户端代码是,因此对分发有任何限制。

注意:IANAL 和 StackOverflowINALT(不是法律团队)。

于 2010-08-24T08:00:31.680 回答
5

查看 AGPL 许可证:

http://en.wikipedia.org/wiki/Affero_General_Public_License

这可以防止软件仅在技术上未“分发”的服务器上使用。

于 2010-08-24T08:01:16.037 回答
2

您可以在服务器上使用大多数开放许可证,而不必分发源代码。它不会影响您的许可情况,因为(在大多数情况下)您没有重新分发它,您只是在运行它并且人们正在使用它。

就 LGPL 而言,您可以在重新分发的闭源软件中使用它,而无需发布源代码,只要您不更改开源组件即可。一旦您接触到 LGPL 部分的源代码,您就需要开源您所做的更改。

于 2010-08-24T08:02:09.313 回答
1

LGPL 库也可以与商业应用程序/软件一起使用;LGPL 和 GPL 许可代码之间的区别在于,在第一种情况下,使用 LGPL 库的软件可以根据不同的许可(包括自定义许可)获得许可。
如果您使用 GPL 库,那么使用该库的软件也必须获得 GPL 许可。

GPL 许可证要求您在重新分发应用程序时还提供应用程序的源代码。

于 2010-08-24T08:05:29.177 回答