GPL / LGPL和静态链接


75

我在网上阅读到以下组合存在:

专有源代码+ GPL源代码-> GPL源代码(所有代码必须在GPL下发布)

专有源代码+ LGPL源代码->专有源代码(所有代码均为专有)

现在,静态/动态链接GPL和LGPL代码如何与以上组合结合使用?


2
Propriety源代码+ LGPL源代码-> Propriety源代码,这是错误的,LGPL源代码保留为LGPL。
2012年

3
我投票结束这个问题是离题的,因为它与许可或法律问题有关,与编程或软件开发无关。有关详细信息,请参见此处;有关帮助中心的更多信息,请参见此处
JasonMArcher 2015年

27
许可是软件开发的关键部分。考虑到代码的GPL和NON GPL部分的静态和动态链接如何影响软件开发以及编程的程度,我认为这不会成为现实-topic,因此我将要求重新考虑使其保持开放状态。
Raulp 2015年

我不知道这是否应该迁移到opensource.stackexchange.com。但这确实对开发人员也很重要,因此不确定。
pevik

Answers:


106

如果您要分发合并的作品,则必须使用以下许可证;

专有源代码+ GPL源代码

专有源代码+ LGPL源代码

另请参见从专有源代码执行(L)GPL程序

更新(2014年11月)全面的教程和指南明确包含(L)GPL及其用法(包括分发)的详细说明。我推荐它以获取更多详细信息。


关于“您必须将两个部分都作为LGPL发布”部分:我认为不必是LGPL。只要许可允许未经修改的应用程序源与LGPL库一起重新分发(因此可以重新编译),就可以使用任何许可证发行的应用程序源代码,即使是禁止修改的许可证也可以。
海德2014年

1
...尽管,我想“提供允许用户重新链接应用程序的所有内容”部分还提供了LGPL以外的其他资源,因此可以重新编译然后重新链接。
海德2014年

我想发布一个与SDL1.2静态链接的游戏。我们是否真的必须运送目标文件或任何允许重新链接的文件,还是仅按要求提供它们,例如copyleft源代码?如果我必须附带.o文件,则可以使用动态链接。
山姆·沃特金斯

3
我基本上可以肯定这句话是绝对正确的。如果您静态链接LGPL库,则应用程序本身必须是LGPL。过去,我们曾对此律师进行过仔细检查。动态链接到LGPL库是避免成为LGPL的唯一方法。
Steve Grahovac 2015年

1
在APK(Android应用)中使用二进制(静态)或共享库有什么区别吗?两种情况下,用户都无法轻易替换apk中的库
user25
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.