`
aoaoao
  • 浏览: 23315 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

[转贴]GPL与LGPL

阅读更多
GPL(GNU General Public License)

我们很熟悉的Linux就是采用了GPL。GPL协议和BSD, Apache Licence等鼓励代码重用的许可很不一样。GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售。这也就是为什么我们能用免费的各种linux,包括商业公司的linux和linux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。

GPL协议的主要内容是只要在一个软件中使用("使用"指类库引用,修改后的代码或者衍生代码)GPL 协议的产品,则该软件产品必须也采用GPL协议,既必须也是开源和免费。这就是所谓的"传染性"。GPL协议的产品作为一个单独的产品使用没有任何问题,还可以享受免费的优势。

由于GPL严格要求使用了GPL类库的软件产品必须使用GPL协议,对于使用GPL协议的开源代码,商业软件或者对代码有保密要求的部门就不适合集成/采用作为类库和二次开发的基础。

其它细节如再发布的时候需要伴随GPL协议等和BSD/Apache等类似。

LGPL(GNU Lesser General Public License)

LGPL 是GPL的一个为主要为类库使用设计的开源协议。和GPL要求任何使用/修改/衍生之GPL类库的的软件必须采用GPL协议不同。LGPL允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并发布和销售。

但是如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。因此LGPL协议的开源代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础,通过修改和衍生的方式做二次开发的商业软件采用。

GPL/LGPL都保障原作者的知识产权,避免有人利用开源代码复制并开发类似的产品


-------------------转贴的分割线-------------------
这下用Ext的风险就大多了~
分享到:
评论

相关推荐

    开源协议比较(BSD,Apache,GPL,LGPL,MIT)

    与GPL不同,LGPL允许软件的使用者将LGPL许可的库链接到非GPL许可的程序中,而不强制整个程序必须遵循GPL许可证。这意味着使用LGPL许可库的应用程序可以选择使用其他许可证,只要不修改库本身即可。 #### MIT许可证 ...

    开源协议BSD, GPL, LGPL, MIT等比较

    开源协议比较 BSD, GPL, LGPL, MIT 等 开源协议是开源软件开发和使用中非常重要的一部分,选择合适的开源协议可以保护作者的权益同时也可以促进开源软件的发展。常见的开源协议有 BSD, GPL, LGPL, MIT 等,这些协议...

    BSD-APACHE-GPL-LGPL-MIT.rar_open

    五种开源协议的比较(BSD,APACHE,GPL,LGPL,MIT)–整理Comparison of five open source license (BSD, APACHE, GPL, LGPL, MIT)- finishing

    BSD-APACHE-GPL-LGPL-MIT.rar_mit gpl

    在本文中,我们将深入探讨五种常见的开源协议:BSD、Apache、GPL、LGPL以及MIT,并分析它们之间的差异。 首先,BSD(Berkeley Software Distribution)协议源于加州大学伯克利分校,其主要特点是宽松的授权条件。它...

    五种开源协议(GPL,LGPL,BSD,MIT,Apache)介绍

    本文将深入探讨五种主要的开源协议:GPL、LGPL、BSD、MIT和Apache。 首先,GPL(GNU General Public License)是最具影响力的开源协议之一,它确保了软件的“copyleft”属性,即如果软件的任何部分被用于其他项目,...

    Fortran自由函数集合(Fortran free function collection)(不含GPL/LGPL代码)

    Fortran自由函数集合(Fortran free function collection)(不含GPL/LGPL代码)

    五种常见软件开源协议介绍-GPL、LGPL、BSD、Apache、MIT.pdf

    五种常见软件开源协议介绍-GPL、LGPL、BSD、Apache、MIT.pdf

    重要开源协议的比较(BSD,Apache,GPL,LGPL,MIT).pdf

    在众多开源协议中,有五种特别重要且被广泛使用的协议:BSD、Apache、GPL、LGPL和MIT。这五种协议各有其特点和适用范围,下面我将对它们逐一进行详细介绍。 首先,BSD协议(Berkeley Software Distribution License...

    GPL 2.0协议

    GPL 2.0协议带格式文本,估计做计算机的是绕不开该协议了,可以下载下来研究研究。

    jackson-core-1gpl、jackson-mapper-lgpl-1.9.13jar包

    总的来说,"jackson-core-1gpl、jackson-mapper-lgpl-1.9.13.jar包"为Java开发提供了强大的JSON处理能力,遵循LGPL协议,允许自由使用和修改。这两个jar包的结合使用,可以满足大部分JSON序列化和反序列化的需求,...

    各种开源协议简析 GPL、BSD、MIT、Mozilla、Apache、LGPL1

    本文将分析几种常见的开源协议,包括GPL、BSD、MIT、Mozilla(MPL)、Apache 2.0和LGPL,帮助开发者理解它们的特点和适用场景。 首先,BSD开源协议赋予了使用者极高的自由度。它允许使用者自由地使用、修改源代码,...

    HDP-GPL-3.1.0.0-centos7-gpl.tar.gz

    2. **下载与解压**:从官方渠道获取HDP-GPL-3.1.0.0-centos7-gpl.tar.gz文件,然后在Linux终端使用`tar -zxvf HDP-GPL-3.1.0.0-centos7-gpl.tar.gz`命令进行解压,解压后会得到一系列Ambari相关的文件和目录。...

    Pick_think3_gpl_thinkdesign开发_think3gpl宏_Pick_think3_gpl_源码

    thinkdesign GPL 宏写的实例 供对think3中gpl有兴趣的做参考。

    HDP-GPL-3.1.4.0-centos7-gpl.tar.gz

    标题 "HDP-GPL-3.1.4.0-centos7-gpl.tar.gz" 提供的信息表明,这是一个与HDP(Hortonworks Data Platform)相关的开源版本,版本号为3.1.4.0,是为CentOS 7操作系统设计的。HDP是一个基于Apache Hadoop的全面数据平台...

    常用开源协议文本

    与GPL相比,LGPL允许非开源项目链接到开源库,只要不修改库本身,就可以保持非开源状态。这意味着开发者的应用程序可以与LGPL库一起分发,而不需要公开源代码,除非修改了LGPL库。 2. GPL (GNU General Public ...

    ext-7.0.0-gpl.zip

    描述中的同样信息"ext-7.0.0-gpl.zip"没有提供额外的细节,但我们可以假设它与标题一致,是关于一个特定版本(7.0.0)的扩展或插件的归档文件。 标签"ext"表明这是一个扩展程序,可能用于某种软件平台,如Web开发...

    linux系统教程课后习题答案借鉴.pdf

    GNU软件遵循GNU通用公共许可证(GPL)或Lesser GPL(LGPL)。GPL保证软件的自由性,要求软件以源代码形式发布,任何用户都可以复制、发布或修改,并要求如果软件使用了GPL保护的部分,整个软件也必须遵循GPL。LGPL则...

    HDP-GPL-3.0.1.0-centos7-gpl.tar.gz 用于部署HDP大数据平台,处理和分析各种类型的数据

    该软件包主要用于在CentOS 7操作...通过安装和配置HDP-GPL-3.0.1.0-centos7-gpl.tar.gz,您可以搭建一个功能强大的大数据平台,用于处理和分析各种类型的数据。它可以帮助您实现数据的存储、处理、查询和可视化等任务。

    ffmpeg库:ffmpeg-n5.1-latest-win64-gpl-shared-5.1

    这个压缩包"ffmpeg-n5.1-latest-win64-gpl-shared-5.1" 提供的是FFmpeg库的最新版本5.1,针对64位Windows操作系统,并且是基于GPL(GNU General Public License)许可的共享版本。下面我们将深入探讨FFmpeg库的关键...

    GPL16200_programming_SUNPLUS_

    理解这些接口的工作原理及如何与外部设备交互,对于构建嵌入式系统至关重要。 最后,电源管理是SUNPLUS芯片的一大亮点。编程时,开发者需关注低功耗模式的设置,如休眠、待机等,以确保设备在不牺牲性能的前提下,...

Global site tag (gtag.js) - Google Analytics