如果我修改并动态链接修改后的 LGLP 库,我是否必须使更改可用?[关闭]

StackOverflow https://stackoverflow.com/questions/1823622

  •  22-07-2019
  •  | 
  •  

我在当前动态链接的 LGPL 库中发现了一个错误。

  • 该应用程序是闭源的
  • 我动态链接到 LGPL Lib
  • 该应用程序将向公众开放

如果我修改库,我的理解是我必须使更改后的源文件可用于应用程序,这是正确的吗?

有帮助吗?

解决方案

您正在重新分发 LGPL 库的修改后的代码,因此您需要发布该库的源代码(您的错误修复)。这并不意味着您需要发布整个应用程序的源代码,而只需发布 LGPL 的库即可。

另请注意,GPL/LGPL 仅要求您将源代码提供给您向其提供二进制文件的人。它不需要您例如将源代码放在网络上,供世界上任何人下载。一个可靠的遵守方法是将源代码打包到您的发行版中,以便人们将其与二进制文件放在一起,然后没有人可以抱怨源代码不可用。

其他提示

另一种解决方案(尽管可能并不总是可行)是从 LGPL 库派生您自己的子类,并在那里进行必要的修复。当然,更好的方法是将修复程序提交给库的维护者,但如果您需要尽快发布代码,这可能是需要考虑的事情。通过派生内容,您并没有违反 LGPL。

从许可证:

“应用程序”是使用图书馆提供的接口但不以图书馆为基础的任何作品。定义库定义的类的子类被视为使用库提供的接口的一种模式。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top