常见的开源协议

GPL (GNU General Public License)

关键字 linux,传染性

只要你用了任何该协议的库、甚至是一段代码,那么你的整个程序,不管以何种方式链接,都必须全部使用GPL协议、并遵循该协议开源。商业软件公司一般禁用GPL代码,但可以使用GPL的可执行文件和应用程序。

GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售。

LGPL 是GPL针对动态链接库放松要求了的版本。允许使用动态链接库的软件,不使用LGPL协议。

AGPL是GPL的严格版,所有使用的AGPL的软件,甚至应该也必须开源。

商业软件公司可以使用GPL的执行文件和应用程序,允许链接LGPL的动态链接库。

Apache,MIT,BSD

关键字 对商业友好,允许修改,保持原有的版权声明

区别:Apache协议对源码修改需要注明修改的部分。
MIT是和BSD一样宽范的许可协议,作者只想保留版权,而无任何其他了限制。

MPL

关键字 修改后代码版权属于原始的作者

允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者
这种授权维护了商业软件的利益,它要求基于这种软件的修改无偿贡献

参考:
http://os.51cto.com/art/201409/450453.htm
http://blog.csdn.net/nightmare/article/details/12405109

你可能感兴趣的:(常见的开源协议)