让我们说我正在编写一个支持插件的程序,我编写了一个插件,该插件引用了一个在LGPL下获得许可的程序集(.net),我现在必须让整个项目开源并在LGPL下吗? / p>
答案 0 :(得分:4)
LGPL和GPL之间的主要区别在于LGPL不会在最终用户可以互换的模块之间强加任何许可要求。
只要最终用户可以替换第三方程序集的不同但兼容的版本,并且只要您遵守LGPL的其他要求(如果您正在分发第三方程序集,则给予适当的归属)你可以随意许可你的东西。
答案 1 :(得分:2)
这取决于参考的性质。如果“有参考”类似于“链接库”,则不会强制您根据LGPL许可您的软件。这就是LGPL和GPL不同的地方。
答案 2 :(得分:1)
咨询律师是获得这种性质的完整,准确建议的唯一途径。
话虽如此,如果您将LGPL代码留在独立的.NET程序集中,您应该没问题。如果直接在项目中使用代码,则可能会遇到其他问题,但只要.NET程序集保持原样,并且只是由项目使用,您就不必打开代码(尽管您需要遵循LGPL的其他限制 - 主要分发相应的许可证文件,提供对程序集代码的访问,并使用正确的归属信息。)
答案 3 :(得分:0)
抱歉这个帖子很老了。但仍然不能很清楚地发现它。所以这是我的回答
当图书馆或框架是LGPL时,您可以自由地使用商业项目中的库(是的。您可以出售它)。您不需要使您的代码开源。
只有在以下情况下才需要创建代码opensource: 1.你改变了库/框架的代码。要么 2.您静态链接库。 (如果您动态链接,则无需担心。在Windows中,您可以使用.dll文件动态链接)