详细介绍 GPL 协议

红薯 发布于 2009/11/30 20:35
阅读 179K+
收藏 61

在自由软件所使用的各种许可证之中,最为人们注意的也许是通用性公开许可证(General Public License,简称GPL)。

GPL同其它的自由软件许可证一样,许可社会公众享有:运行、复制软件的自由,发行传播软件的自由,获得软件源码的自由,改进软件并将自己作出的改进版本向社会发行传播的自由。
GPL还规定:只要这种修改文本在整体上或者其某个部分来源于遵循GPL的程序,该修改文本的 整体就必须按照GPL流通,不仅该修改文本的源码必须向社会公开,而且对于这种修改文本的流通不准许附加修改者自己作出的限制。因此,一项遵循GPL流通 的程序不能同非自由的软件合并。GPL所表达的这种流通规则称为copyleft,表示与copyright(版权)的概念“相左”。

GPL协议最主要的几个原则:

1、确保软件自始至终都以开放源代码形式发布,保护开发成果不被窃取用作商业发售。任何一套软 件,只要其中使用了受 GPL 协议保护的第三方软件的源程序,并向非开发人员发布时,软件本身也就自动成为受 GPL 保护并且约束的实体。也就是说,此时它必须开放源代码。

2、GPL 大致就是一个左侧版权(Copyleft,或译为“反版权”、“版权属左”、“版权所无”、“版责”等)的体现。你可以去掉所有原作的版权 信息,只要你保持开源,并且随源代码、二进制版附上 GPL 的许可证就行,让后人可以很明确地得知此软件的授权信息。GPL 精髓就是,只要使软件在完整开源 的情况下,尽可能使使用者得到自由发挥的空间,使软件得到更快更好的发展。

3、无论软件以何种形式发布,都必须同时附上源代码。例如在 Web 上提供下载,就必须在二进制版本(如果有的话)下载的同一个页面,清楚地提供源代码下载的链接。如果以光盘形式发布,就必须同时附上源文件的光盘。

4、开发或维护遵循 GPL 协议开发的软件的公司或个人,可以对使用者收取一定的服务费用。但还是一句老话——必须无偿提供软件的完整源代码,不得将源代码与服务做捆绑或任何变相捆绑销售。

更多开源协议介绍

加载中
1
g_tree
g_tree

回二楼:是。

回三楼:在中国不怎么样。哈哈。在国外,会有律师团和你过招。

1
zchajax
zchajax

看到有些软件明明写的“使用gpl协议”,结果却没有附上源代码,鄙视这种行为

TalyTwitter
TalyTwitter
我赞同
歌德汤鸡
歌德汤鸡
回复 @fy_kenny :
f
fy_kenny
好像很多人都不知道GPL是什么,所以她们就没有把源码打包
1
悠悠然然
悠悠然然

引用来自“Mark_Ding”的评论

开放部分源码,然后等你用了,再部分插件和功能收费 算遵守GPL么?
给你扫扫盲:
不管开源协议是什么,只要你遵守开源协议,就可以免费的在开源协议授权的范围内使用。
开源了一部分,并不代表人家的兜兜里的东西一定要开源,人家没有开源的部分是可以收费或者销售的。你没有任何理和权利由要求开源的人开源了A就一定要把B也开源出来。
你可以选择不用它没有开源的部分,你就不用付出费用和成本了。
@红薯 已经普及了N次了,开源不等于是免费,开源不等于慈善。
不管是收费还是没有收费,只要你成为开源生态圈的一部分,你就总要付出一些。
不付出也就意味着付出,所以不要以为你没有付费你就省下了。
开源者不欠你什么,不管是你用了还是没有用。
遵守没遵守开源协议不是针对开源者的,而是针对使用者的。开源者只要声明了按照哪种开源协议开源,就表明对使用者在遵守开源协议的前提下放弃部分权利--有时候就表现为免费。
祝勤学习,多长进。
_dingdingding_
_dingdingding_
4、开发或维护遵循 GPL 协议开发的软件的公司或个人,可以对使用者收取一定的服务费用。但还是一句老话——必须无偿提供软件的完整源代码,不得将源代码与服务做捆绑或任何变相捆绑销售。 麻烦解释下 ,这一点是什么意思? 部分功能和插件收费是算服务还是变相捆绑销售呢?
0
ferly
ferly

例如extjs,

如果在他上面开发项目也必需开放出除了extjs之外的源代码吗?

0
唯一
唯一

还是那句话,如果不遵守会怎么样

0
该用户已被和谐
该用户已被和谐

各种协议还是蛮多的,很多都记不住...所以也不管那么多了,拿来用...

0
戴威
戴威

只要你躲在中国,而且像那帮山寨一样低调的闷声发大财,就没人找你麻烦,如果学J.Wong的话,就会被类似jobs之类的找你麻烦。

0
ZhuCheng
ZhuCheng

应该尽量那么去做,哪怕只能尽一点点力

0
小窝他爹
小窝他爹

如果仅仅是自己使用呢? 

0
ValueError
ValueError

引用来自#8楼“赵小龙”的帖子

如果仅仅是自己使用呢? 

没有问题的。GPL的约束有一个大前提:产品通过互联网、光盘或其他方式发行。所以不发行是不受约束的。AGPL则不一样,对在互联网提供服务而不发行产品的情况一样约束。

返回顶部
顶部