我正在尝试理解GPLv2的工作方式,并有几个问题。我将描述几种场景,并想知道GPL是如何在那里应用的。
发布于 2015-09-08 08:18:10
当您使用GNU库时,整个软件需要在GNU下获得许可。GPL有一个变体,LGPL (较小的GPL或Library GPL),它允许从非GPL软件调用库。但是这个库的作者似乎有意选择了LGPL中的GPL,所以他们的意图似乎是不允许将它用于非GPL软件。您的构建过程与此无关。重要的是,如果没有GPL组件,软件是可用的。如果不是,您需要在GPL下授权它。
另一方面,BSD许可证是一种所谓的“许可”许可证.您可以在一个项目中使用BSD -代码,并且仍然在不同的许可下授权它,只要您遵循BSD关于赋予原始作者的权限和他们代码的许可条件的要求(这只适用于他们的代码,而不是您围绕其构建的代码)。
tl;dr:您的整个项目需要在GPLv2下获得许可。
不要将源代码放在公共存储库上:当它是一个web应用程序时,它是否包括在客户端浏览器中执行的Javascript代码?在这种情况下,Javascript代码将分发给您的访问者,并需要在GNU下获得许可。但是,您只使用服务器端的任何代码都不会分发给用户,这意味着您不必发布源代码( GPL的另一个变体,AGPL,它还要求向通过网络使用该软件的任何人授权,但普通的GPL没有此条款)。
https://softwareengineering.stackexchange.com/questions/296681
复制相似问题