首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >扩展GPL代码是否也会产生新的GPL代码?

扩展GPL代码是否也会产生新的GPL代码?
EN

Software Engineering用户
提问于 2012-07-19 16:45:51
回答 3查看 447关注 0票数 2

我目前正在为一个流行的开源项目添加一些功能。它是用C编写的,在每个文件中都嵌入了GPL许可文本。我要添加的功能不受项目支持。所以你可以说它是某种扩展。

在编译主项目时,我的代码会被编译。我的代码在主要项目中,它的集成程度很高。

让我更详细地解释一下。基本上我知道有两种类型的链接。

  1. 我的程序使用mysql。因此,我将我的c代码与libmysqlclient链接起来。这里我使用的是libmysqlclient
  2. 我的代码在libmysqlclient上添加了哈希表功能,这样用户就可以按列名访问字段。

我的项目是第二类。应该是GPL吗?第一种情况怎么样(我很好奇)?

EN

回答 3

Software Engineering用户

发布于 2012-07-19 16:49:29

是。GPL是一种病毒式许可;任何扩展项目的内容,甚至是与共享库的链接,都必须是GPL或兼容的许可,其中包括许多其他开源许可证,而不是所有其他开源许可证。

票数 4
EN

Software Engineering用户

发布于 2023-02-23 16:39:09

您想要做的是创建一个派生的工作。要做到这一点,你需要版权持有人的许可。如果您要修改的工作是GPL许可的,那么许可证将授予您此权限。您可以私下或在公司内部使用派生工作,而无需承担任何义务。

如果您想要分发导出的作品(或仅原作),您需要版权持有人的许可。GPL许可证允许您分发工作,但前提是您在GPL许可下分发它。(并承诺提供完整的源代码)。

没有什么能使您的代码获得GPL许可。但是在某些情况下,你可以在GPL -授权你的代码或者侵犯版权之间做出选择。

票数 3
EN

Software Engineering用户

发布于 2012-07-19 16:51:15

在案例(2)中,您实际上已经将代码添加到现有的GPL‘’ed项目中,GPL非常清楚地表明,您正在创建一个派生工作,该工作受GPL的约束。

在(1)的情况下,对于链接到GPL库是否要求您在GPL下授权您的产品存在一些分歧。就我个人而言,我认为你可以通过链接到一个GPL库来做你想做的任何事情。在我看来,在这种情况下,您只是在使用库,而不是创建派生的工作。

但是,还很高兴知道还有另一个名为"LGPL“的许可证,它明确规定,由于链接到LGLP库,您不必在GPL下授权产品。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/157465

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档