当前访客身份:游客 [ 登录 | 加入开源中国 ]

问答

当前位置:
问答 » 技术分享

开程序员的淘宝店!寻找开源技术服务伙伴!>>> »  

在自由软件所使用的各种许可证之中,最为人们注意的也许是通用性公开许可证(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 协议开发的软件的公司或个人,可以对使用者收取一定的服务费用。但还是一句老话——必须无偿提供软件的完整源代码,不得将源代码与服务做捆绑或任何变相捆绑销售。

更多开源协议介绍

红薯 红薯
发帖于 7年前
35回/131122阅
标签: GPL

按默认排序  显示最新回答   共有35个回答 (最后回答: 1个月前 )

    0
  • ferly

    例如extjs,

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

    评论(0)| 引用此评论| 举报 (2010-04-26 14:24)
  • 0
  • 唯一

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

    评论(0)| 引用此评论| 举报 (2010-04-26 15:04)
  • 0
  • g_tree

    回二楼:是。

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

    评论(0)| 引用此评论| 举报 (2010-10-14 14:20)
  • 0
  • 各种协议还是蛮多的,很多都记不住...所以也不管那么多了,拿来用...

    评论(0)| 引用此评论| 举报 (2010-10-14 17:18)
  • 0
  • 戴威

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

    评论(0)| 引用此评论| 举报 (2010-10-14 17:51)
  • 0
  • ZhuCheng

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

    评论(0)| 引用此评论| 举报 (2010-10-14 20:49)
  • 0
  • 小窝他爹

    如果仅仅是自己使用呢? 

    评论(0)| 引用此评论| 举报 (2010-12-18 21:11)
  • 0
  • ValueError

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

    如果仅仅是自己使用呢? 

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

    评论(0)| 引用此评论| 举报 (2010-12-18 23:46)
  • 0
  • xyz555

    引用来自#2楼“ferly”的帖子

    例如extjs,

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

    自己用,不拿去卖钱开源没问题。

    extjs在2.0.2前使用的是lgpl,这个相对宽松,具体对extjs只要你没修改extjs就可以。

    而2.0.2后面的采用gpl,同时打包发布就要开源。不过好像也有规避的方法,发布时不要连同extjs打包,要用户自己去下载。(根据上面的,这条可能我的理解有误,欢迎指正,呵呵)

    评论(0)| 引用此评论| 举报 (2010-12-19 08:44)
  • 0
  • zchajax

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

    --- 共有 3 条评论 ---
    评论(3)| 引用此评论| 举报 (2011-04-18 17:14)
最新热门职位
更多开发者职位上 开源中国·招聘


回评论顶部 | 回页面顶部