四種常見軟件開源協議介紹-GPL、LGPL、BSD、Apache

轉自:https://baijiahao.baidu.com/s?id=1603028095502634219&wfr=spider&for=pc

軟件開源是許多軟件企業需要關注的問題,不同的開源軟件協議,對應不同的源代碼使用限制。只有瞭解這些開源軟件協議,才能更好地使用和回饋開源軟件,否則就有可能觸犯法律。今天介紹四種常見的開源軟件協議:

GPL(GNU General Public License)LGPL(GNU Lesser General Public License)BSD(Berkerley Software Distribution)Apache License

1、GPL

GPL的出發點是代碼的開源/免費使用和引用/修改/衍生代碼的開源/免費使用,但不允許修改後和衍生的代碼做爲閉源的商業軟件發佈和銷售。

GPL的“傳染性”在於:只要在一個軟件中使用(”使用”指類庫引用,修改後的代碼或者衍生代碼)GPL 協議的產品,則該軟件產品必須也採用GPL協議,既必須也是開源和免費。我們所熟悉的Linux就是採用了GPL。

2、LGPL

LGPL是GPL的一個爲主要爲類庫使用設計的開源協議。LGPL允許商業軟件通過類庫引用(link)方式使用LGPL類庫而不需要開源商業軟件的代碼。因此LGPL協議的開源代碼很適合作爲第三方類庫被商業軟件引用,但不適合希望以LGPL協議代碼爲基礎,通過修改和衍生的方式做二次開發的商業軟件採用。

3、BSD

BSD開源協議是一個給於使用者很大自由的協議。基本上使用者可以自由的使用,修改源代碼,也可以將修改後的代碼作爲開源或者專有軟件再發布。

當使用了BSD協議的代碼,或者以BSD協議代碼爲基礎做二次開發自己的產品時,需要滿足三個條件:

如果再發布的產品中包含源代碼,則在源代碼中必須帶有原來代碼中的BSD協議;如果再發布的只是二進制類庫/軟件,則需要在類庫/軟件的文檔和版權聲明中包含原來代碼中的BSD協議;不可以用開源代碼的作者/機構名字和原來產品的名字做市場推廣。因此,很多公司企業在選擇開源軟件的時候都首選BSD協議,因爲可以完全控制這些第三方的代碼,而且在必要的時候可以進行修改或者二次開發。

4、Apache License

Apache Licence是著名的非盈利開源組織Apache採用的協議。該協議和BSD類似,同樣鼓勵代碼共享和尊重原作者的著作權,同樣允許代碼修改,再發布(作爲開源或商業軟件)。需要滿足的條件也和BSD類似:

需要給代碼的用戶一份Apache Licence;如果你修改了代碼,需要在被修改的文件中說明;在延伸的代碼中(修改和有源代碼衍生的代碼中)需要帶有原來代碼中的協議,商標,專利聲明和其他原來作者規定需要包含的說明;如果再發布的產品中包含一個Notice文件,則在Notice文件中需要帶有Apache Licence。你可以在Notice中增加自己的許可,但不可以表現爲對Apache Licence構成更改。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章