當前位置:股票大全官網 - 基金投資 - 什麽是GPL和LGPL?

什麽是GPL和LGPL?

GNU通用公共許可證(簡稱GPL)是由自由軟件基金會頒發的計算機軟件許可證。最初是由理查德·斯托爾曼為GNU項目寫的。目前,大多數GNU程序和超過壹半的自由軟件都使用這個許可證。這個許可證的最新版本是“版本2”,發布於1991。GNU通用許可(LGPL)是壹個來自GPL的許可,在壹些GNU庫中使用。

/GPL

GPL和LGPL是GNU的兩個許可證。越來越多的自由軟件使用GPL作為其授權聲明。如果妳對GPL壹無所知,妳在使用自由軟件時可能會違反GPL的授權。如果是個人或者非正規公司無所謂,但是如果是大規模的公司,恐怕會有被起訴的風險。

在使用Log4cpp的時候,我想到了授權,於是對學習GPL產生了興趣。這是必須的,因為公司還維護著壹個經過驗證的自由軟件庫,裏面有不僅功能可靠,而且可以私用的自由軟件,否則後果會很嚴重(黎叔很生氣!)。

Log4cpp最初版本使用GPL作為授權聲明,0.2.1版本後,改為更加寬松的LGPL。LGPL最初是Library GPL的縮寫,後來改名為Lesser GPL,是壹種更寬松的GPL。當壹個自由軟件使用GPL聲明時,該軟件的用戶有權重新發布和修改該軟件,並獲得該軟件的源代碼;但是,只要用戶在他的程序中使用自由軟件或修改軟件,那麽用戶的程序也必須公布其源代碼,並允許他人公布和修改。換句話說,使用GPL聲明下的自由軟件開發的新軟件也必須是自由軟件。

LGPL是GPL的壹個變種,它也是由GNU提出來的,目的是為了獲得更多甚至是商業軟件開發者的支持。與GPL最大的區別是,LGPL授權的自由軟件可以私有使用,開發的新軟件可以私有而不是自由軟件。因此,任何公司在使用自由軟件之前都應該確保它得到了LGPL或其他GPL變體的授權。

以下是理查德·斯托爾曼關於GPL和LGPL的討論。

為什麽妳不應該用LGPL來出版妳的下壹個圖書館呢?

GNU計劃在使用這個庫時有兩個主要許可證。壹個是GNU LGPL(庫GPL);另壹種是普通GNU GPL。選擇不同的許可證是非常不同的:選擇LGPL允許庫被用於私人程序;選擇普通GPL只允許在自由軟件中使用。

關於哪個許可證最適合指定庫的問題,其實是壹個政策問題,要看實際情況。目前,大多數GNU庫都在使用LGPL,這意味著我們只使用其中壹種策略,而忽略了另壹種。所以現在我們在尋找更多以普通GPL許可形式發布的庫。

私人軟件開發商有資金優勢;自由軟件開發者需要利用彼此的優勢。對壹個庫使用通用GPL對自由軟件開發者比對私有軟件開發者有更多的好處:他們可以使用的庫對私有軟件開發者是不可用的。

使用通用GPL並不適用於所有的庫。在某些情況下,使用LGPL更合理。最常見的情況是,自由庫的特性可以很容易地通過私有軟件與其他替代庫壹起實現。在這種情況下,這個庫不能給自由軟件任何特殊的優勢,所以最好為LGPL出版這個庫。

這就是我們選擇LGPL作為GNU C庫的原因。簡而言之,還有很多其他的C庫;我們使用GPL發布庫,這會迫使私有軟件開發者使用其他庫——這對他們來說不是問題,但我們有麻煩了。

但是,當壹個庫提供的函數非常獨特時,比如GNU Readline,情況就大不壹樣了。Readline庫可以實現輸入編輯,記錄交互式程序操作,這在其他地方通常很少見。在GPL下發布它並限制它只能在自由程序中使用,這對我們的社區是壹個重要的促進。至少在今天,壹個應用程序是自由軟件只是因為它需要使用Readline。

如果我們收集壹些強大的庫,這些庫在私有軟件中沒有任何相似之處,並采用GPL,它們將為新的自由軟件的構建提供壹系列有用的模塊。這將是未來自由軟件開發的壹個顯著優勢,壹些項目會考慮將軟件自由化,以便使用這些庫。大學項目容易受影響;而今天,隨著壹些公司開始考慮軟件自由化,甚至壹些商業項目也會受到影響。

私人軟件開發者試圖否認自由競爭的重要性,他們會盡力說服作者不要使用GPL來發布庫。例如,他們會訴諸利己主義,並發誓如果我們讓他們在私有軟件產品中使用代碼,“更多的用戶”將使用該庫。知名度是壹種誘惑,這使得壹個圖書館開發者傾向於相信這種觀點:社會首先需要的是提升壹個圖書館的知名度;。

但是我們不應該聽這種誘惑,因為如果我們團結起來,我們可以做得更好。我們自由軟件開發者應該互相支持。通過發布只能用於自由軟件的庫,我們可以互相幫助,使彼此的自由軟件包優於其他私人替代品。整個自由軟件運動將會有更多的機會,因為自由軟件作為壹個整體會在競爭中表現得更好。

因為“LGPL(Library GPL)”這個名字在這個問題上傳達了壹個錯誤的觀點,所以我們計劃把名字改成“Lesser GPL(Lesser GPL)”。事實上,更改名稱需要壹些時間,但您不必再等了——您現在就可以發布應用GPL許可證的庫。

/% CD % F5 % BE % FC/blog/item/922a 6059345 ad 12a 2834 f 013 . html