几种开源协议

by Yan Sheng

早上看到邮件列表中有人讨论能否将wget绑到商业软件中. wget是GPL协议, 加入到自己的软件中, 涉及版权问题. 回顾下目前开源世界中的几种协议, 貌似又点模糊了, 所以再次整理了些:

许可证, 主要是当你想使用其他人的开源软件时有哪些权利让你使用, 或是你需要知道哪些注意事项, 不要去侵犯作者的权利. 另外就是当你想发布软件,开源时, 想要别人怎样使用你的代码以保障自己的权利.

目前主要有以下几种协议,,,简短摘自上述第一个链接文章.

GNU通用公共许可证(GNU General Public License)

你可以拷贝,分发,修改软件, 如果将将其应用到其他项目中, 那么该项目也必须是GPL发布, 具体连带关系.

而源码的发布和二进制可执行文件的发布截然不同...具体限制看http://www.softwarefreedom.org/resources/2008/compliance-guide.html

GNU宽通用公共许可证(GNU Lesser General Public License)

LGPL, 比GPL宽松一些,,,不要求使用LGPL授权软件的软件以LGPL发布. 就是没有连带关系.

BSD许可证(Berkeley Software Distribution License)

新版(也称“三句版”)BSD许可证规定,只要软件的版权申明和许可证的免责条款得以保存,软件可以以任何目的不受限制地分发。该许可证还包含如下条款:即未经许可,不得以软件贡献者的名字为软件的衍生产品做代言。 这一条款正是新版BSD许可证与简版BSD许可证之间的主要区别。

MIT许可证(MIT License)

MIT许可证是限制最少的许可证,唯一的限制是软件必须附带许可协议.

Apache许可证(Apache License)

更加详细,,,,规定权利有四种, 永久性, 免费性, 非排他性, 不可撤回性, 这些主要是有关给予代码作者以适当荣誉,以及保持许可证的一致性。

最后还有Creative Commons, 就是在一些网站上经常见到的cc标志...含cc标志的也有不同的权利/种类, 比如, 署名(必须署名), 相同方式共享(只能基于cc对作品修改分发,,,不能使用其他许可证), 非商业性(不得以商业目的), 禁止衍生(不得以任何方式修改)...cc系列中最为严格的许可证为"署名-非商业-禁止衍生".

cc网站上有完整的说明, 包括小图标. 如果你需要使用cc, 可以直接到cc网站上选择, 生成之后加入到自己的网站中. http://creativecommons.org/

Other