`

什么是GPL开源协议

阅读更多

 

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

 

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

 

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

 

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

 

摘自:http://www.oschina.com/article/12/

分享到:
评论
2 楼 mzl0517 2011-12-04  
lg_asus 写道
惨了,那项目中只有一个地方使用了GPL的东东,那岂不是全部开源?

ps:你说错了,free just means freedom, not no charge


多谢!
1 楼 lg_asus 2011-11-22  
惨了,那项目中只有一个地方使用了GPL的东东,那岂不是全部开源?

ps:你说错了,free just means freedom, not no charge

相关推荐

    GPL 2.0协议

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

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

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

    大下拉框过滤 Filtering Large Select Lists(GPL开源协议)

    这个解决方案是基于GPL开源协议发布的,这意味着任何人都可以免费使用、修改和分享源代码。 博客链接中提到的“https://desert3.iteye.com/blog/1122170”可能提供了关于该技术的详细实现和示例。通常,这样的过滤...

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

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

    Python-开源协议说明

    首先,我们需要了解什么是开源协议。开源协议(Open Source Licenses)是一系列法律文件,它们规定了开源软件的使用、修改、复制和分发的条件。这些协议保障了开源软件的开放性和共享性,同时也保护了作者的知识产权...

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

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

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

    首先,GPL(GNU General Public License)是最具影响力的开源协议之一,它确保了软件的“copyleft”属性,即如果软件的任何部分被用于其他项目,整个项目必须遵循GPL协议。这意味着衍生作品也必须开源,以维护软件的...

    开源协议知多少开源协议知多少

    ### 开源协议详解 #### 一、概述 开源协议是软件开发者为了促进技术交流与合作,将自己开发的软件以特定的方式公开,并规定了其他人如何使用这些软件的规则。开源协议确保了软件的开放性、可修改性和可分发性等...

    五种开源协议的比较

    在众多开源协议中,BSD、Apache、GPL、LGPL 和 MIT 是最为常见且广受好评的几种协议。本文将详细介绍这五种协议的特点、适用场景及其之间的差异。 #### BSD 开源协议 - **简介**:BSD协议给予使用者很大的自由度,...

    1 计算机;GPL等开源协议;Linux 哲学思想的炼成;MBR & GPT1

    计算机基础知识、Linux 哲学思想、GPL 等开源协议、MBR & GPT 本资源摘要信息涵盖了计算机基础知识、Linux 哲学思想、GPL 等开源协议、MBR & GPT 等方面的知识点。 一、计算机基础知识 1. 计算机的发展史:从 ...

    Java程序员必须了解的七大开源协议

    ### Java程序员必须了解的七大开源协议 在软件开发领域,开源协议扮演着极其重要的角色,它们不仅定义了软件如何被使用、修改和分发,还为开发者提供了合法使用开源组件的基础。对于Java程序员而言,了解并熟悉常见...

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

    ### 开源协议比较:BSD, Apache, GPL, LGPL, MIT 在开源软件的世界里,不同的许可证(或称协议)规定了软件的使用、修改和分发规则,它们为开源项目提供了一个法律框架,确保贡献者和使用者之间的权益得到保护。...

    Java程序员需要了解的几个开源协议 .txt

    GPL是最具影响力的开源协议之一,它要求任何使用、修改或分发基于GPL的软件的衍生作品都必须以GPL许可证发布,从而确保了代码的开放性和可访问性。这一特性被称为“传染性”,意味着任何与GPL软件结合的代码也必须...

    Java程序员需要了解的几个开源协议介绍.rar

    本篇文章将详细介绍几个Java程序员必须了解的开源协议,帮助开发者更好地理解和遵循这些规则。 1. **Apache License 2.0**: Apache License 2.0 是一个非常宽松的开源协议,它允许用户自由地使用、修改、复制、...

    各操作系统开源授权许可协议.docx

    常见的开源授权许可协议有GPL、LGPL、Apache、BSD等。每种协议都有其特点和要求,对于开发者来说,了解这些协议非常重要。 GPL协议 GPL(General Public License)是一种常见的开源授权许可协议。它是由Richard ...

    ext-7.0.0-gpl.zip

    标题中的"ext-7.0.0-gpl.zip"是一个软件扩展或库的压缩包,遵循GPL(GNU General Public License)开源协议。这通常意味着它是一个免费的、可修改的软件,用户可以查看源代码并根据需要进行定制,但必须保留原始许可...

    常用开源协议文本

    以下是对五个主要开源协议——LGPL、GPL、MIT、Apache 2.0和BSD的详细解读。 1. LGPL (GNU Lesser General Public License) LGPL,全称GNU较宽松公共许可证,主要用于库和框架。与GPL相比,LGPL允许非开源项目链接...

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

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

    开源协议思维导图(相关系统和简介)

    本文将深入解析几个常见的开源协议,包括BSD、Apache Licence、GPL、LGPL、MIT和MPL,以及它们各自的特点和适用场景。 1. **BSD开源协议**: BSD协议给予使用者极大的自由,允许使用、修改和重新发布源代码,甚至...

    extjs6.2gpl

    标题"extjs6.2gpl"表明这是关于ExtJS的6.2版本,且是遵循GPL(GNU General Public License)开源协议的版本。这个版本允许开发人员免费使用、修改和分发代码,但可能需要在发布的产品中包含源代码。 描述中的"extjs...

Global site tag (gtag.js) - Google Analytics