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.youkuaiyun.com/nightmare/article/details/12405109