原文地址链接(作者算法集市) ) ) ) )。
介绍四种常见的软件开源协议-GPL、LGPL、BSD、Apache软件介绍了软件代码中是否引用/修改/派生了使用开源协议的源代码,以及哪些开源
以下是四个常见的开源软件协议。
33558 www.Sina.com/(gnugeneralpubliclicense ) )。
33558 www.Sina.com/(gnulessergeneralpubliclicense ) )。
33558 www.Sina.com/(berkerleysoftwaredistribution ) )。
GPL
1、GPL GPL的出发点是代码的开源/免费使用和引用/修改/派生代码的开源/免费使用,但不允许将修改后和派生代码作为封闭式商业软件分发销售。
如果源代码使用GPL协议,并且软件产品引用/修改/派生了此源代码,则必须使用GPL协议。
2、LGPL LGPL是GPL的主要为类库的使用而设计的开源协议。 LGPL允许业务软件在类库引用link方法中使用LGPL类库,而不需要开源业务软件的代码。 因此,LGPL协议的开放源代码适合作为第三方类库被业务软件引用,但不适合希望基于LGPL协议代码进行修改和派生二次开发的业务软件
如果源代码使用LGPL协议,则软件产品适合作为类库引用,而不适合作为商业用途使用修改/派生源代码。
3、BSD BSD开源协议是给予用户很大自由的协议。 基本上,使用者可以自由使用,修改源代码,并将修改后的代码作为开源或专有软件重新分发。
如果使用了BSD协议的代码,或者基于BSD协议代码二次开发自己的产品,则必须满足以下三个条件。
如果重新分发的产品包含源代码,则源代码中必须包含原始代码的BSD协议。
如果只重新分发二进制库/软件,则库/软件的文档和版权声明必须包含原始代码的BSD协议。
不得以开放源代码作者/机构名称和原始产品的名称进行营销。
因此,许多企业在选择开源软件时首选BSD协议。 因为,您可以完全控制这些第三方代码,并根据需要进行修改和二次开发。
如果源代码中使用了BSD协议,则软件产品可以引用/修改/派生它,可以是开源的、免费的,也可以用于商业用途,但必须包含或声明BSD协议。
4、Apache License Apache Licence是知名非营利开源组织Apache采用的协议。 该协议与BSD类似,同样鼓励共享代码和尊重原作者的版权,同样允许修改代码后发布(作为开源或商业软件)。 必须满足的条件也与BSD类似:
必须将Apache Licence传递给代码的用户;
如果修改了代码,则必须在修改后的文件中进行说明;
扩展代码(经过修改并从源代码派生的代码)必须包含在原始代码中的合同、商标、专利声明和其他原始作者规定中的说明。
如果重新发布的产品包含Notice文件,则Notice文件必须包含Apache Licence。
您可以将自己的许可证添加到Notice,但不能将其表示为对Apache Licence的配置更改。
如果源代码使用Apache License协议,则软件产品可以浏览/修改/派生它。 开源,可以免费,也可以作为商用。 修改的部分需要说明。 派生的部分需要原始协议,必须包括或声明Apache License协议和原作者的说明,并且可以添加自己的说明。
以上仅供参考
如果有问题的话,谢谢您的指出
如果有侵权,我们会通知您删除