標籤: 暫無標籤

GNU General Public License 即GNU通用許可證,是自由軟體(Free Software)的通用版權認證協議,由自由軟體基金會(FSF)制定和發布。

GPLGPL
GPL是GNU General Public License(GNU通用公共許可證);LGPL是GNU Lesser General Public License(GNU寬通用公共許可證)的縮寫形式,舊稱GNU Library General Public License(GNU庫通用公共許可證);GFDL是GNU Free Documentation License(GNU自由文檔許可證)。它們是自由軟體(Free Software)的通用版權認證協議,由自由軟體基金會(FSF)制定和發布。

1 GPL -基本簡介

GPLGPL
GPL(GNU通用公共許可證)大多數軟體許可證決意剝奪共享和修改軟體的自由。GNU通用公共許可證力圖保證的共享和修改自由軟體的自由。保證自由軟體對所有用戶是自由的。GPL適用於大多數自由軟體基金會的軟體,以及由使用這些軟體而承擔義務的作者所開發的軟體。(自由軟體基金會的其他一些軟體受GNU庫通用許可證的保護),也可以將它用到的程序中。

GNU通用公共許可證決意保證有發布自由軟體的自由(如果願意,可以對此項服務收取一定的費用);保證能收到源程序或者在需要時能得到它;保證能修改軟體或將它的一部分用於新的自由軟體;而且還保證知道能做這些事情。

為了保護的權利,需要作出規定:禁止任何人不承認的權利,或者要求放棄這些權利。如果修改了自由軟體或者發布了軟體的副本,這些規定就轉化為的責任。

例如,如果發布這樣一個程序的副本,不管是收費的還是免費的,必須將具有的一切權利給予的接受者;必須保證他們能收到或得到源程序;並且將這些條款給他們看,使他們知道他們有這樣的權利。

採取兩項措施來保護的權利。

(1)給軟體以版權保護。
(2)給提供許可證。它給複製,發布和修改這些軟體的法律許可。

同樣,為了保護每個作者和自己,需要清楚地讓每個人明白,自由軟體沒有擔保(nowarranty)。如果由於其他某個人修改了軟體,並繼續加以傳播。需要它的接受者明白:他們所得到的並不是原來的自由軟體。由其他人引入的任何問題,不應損害原作者的聲譽。

任何自由軟體不斷受到軟體專利的威脅。希望避免這樣的風險,自由軟體的再發布者以個人名義獲得專利許可證。事實上,將軟體變為私有。為防止這一點,必須明確:任何專利必須以允許每個人自由使用為前提,否則就不准許有專利。

2 GPL -程序開發

GPLGPL
開發了新程序,而且需要它得到公眾最大限度的利用。要做到這一點的最好辦法是將它變為自由軟體。使得每個人都能在遵守條款的基礎上對它進行修改和重新發布。為了做到這一點,給程序附上下列聲明。最安全的方式是將它放在每個源程序的開頭,以便最有效地傳遞拒絕擔保的信息。每個文件至少應有「版權所有」行以及在什麼地方能看到聲明全文的說明。

自由軟體基金會出版的GNU通用公共許可證條款來修改和重新發布這一程序。或者用許可證的第二版,或者(根據的選擇)用任何更新的版本。發布這一程序的目的是希望它有用,但沒有任何擔保。甚至沒有適合特定目的的隱含的擔保。更詳細的情況請參閱GNU通用公共許可證。

應該已經和程序一起收到一份GNU通用公共許可證的副本。如果還沒有,寫信給:TheFreeSoftwareFoundation,Inc.,675MassAve,Cambridge,MA02139,USA。還應加上如何和保持聯繫的信息。如果程序以交互方式進行工作,當它開始進入交互方式工作時,使它輸出類似下面的簡短聲明:Gnomovision第69版,版權所有(C)19XX,作者姓名,Gnomovision絕對沒有擔保。要知道詳細情況,請輸入『showw』。這是自由軟體,歡迎遵守一定的條件重新發布它,要知道詳細情況,請輸入『showc』。

假設的命令『showw』和『showc』應顯示通用公共許可證的相應條款。當然,使用的命令名稱可以不同於『showw』和『showc』。根據的程序的具體情況,也可以用菜單或滑鼠選項來顯示這些條款。如果需要,應該取得的上司(如果是程序員)或的學校簽署放棄程序版權的聲明。下面只是一個例子,應該改變相應的名稱:Yoyodyne公司以此方式放棄JamesHarker所寫的Gnomovision程序的全部版權利益。

3 GPL -GPL協議

GPLGPL
Linux就是採用GPL。GPL協議和BSD,ApacheLicence等鼓勵代碼重用的許可很不一樣。GPL的出發點是代碼的開源/免費使用和引用/修改/衍生代碼的開源/免費使用,但不允許修改後和衍生的代碼做為閉源的商業軟體發布和銷售。這也就是為什麼我們能用免費的各種linux,包括商業公司的linux和linux上各種各樣的由個人,組織,以及商業軟體公司開發的免費軟體了。

GPL協議的主要內容是只要在一個軟體中使用(」使用」指類庫引用,修改後的代碼或者衍生代碼)GPL協議的產品,則該軟體產品必須也採用GPL協議,既必須也是開源和免費。這就是所謂的」傳染性」。GPL協議的產品作為一個單獨的產品使用沒有任何問題,還可以享受免費的優勢。

由於GPL嚴格要求使用了GPL類庫的軟體產品必須使用GPL協議,對於使用GPL協議的開源代碼,商業軟體或者對代碼有保密要求的部門就不適合集成/採用作為類庫和二次開發的基礎。

其它細節如再發布的時候需要伴隨GPL協議等和BSD/Apache等類似。

4 GPL -公共許可

GPLGPL
有關複製,發布和修改的條款和條件

此許可證適用於任何包含版權所有者聲明的程序和其他作品,版權所有者在聲明中明確說明程序和作品可以在GPL條款的約束下發布。下面提到的「程序」指的是任何這樣的程序或作品。而「基於程序的作品」指的是程序或者任何受版權法約束的衍生作品。也就是說包含程序或程序的一部分的作品。可以是原封不動的,或經過修改的和/或翻譯成其他語言的(程序)。翻譯包含在修改的條款中。每個許可證接受人(licensee)用來稱呼。許可證條款不適用於複製,發布和修改以外的活動。這些活動超出這些條款的範圍。運行程序的活動不受條款的限止。僅當程序的輸出構成基於程序作品的內容時,這一條款才適用(如果只運行程序就無關)。是否普遍適用取決於程序具體用來做什麼。

1、只要在每一副本上明顯和恰當地出版版權聲明和不承擔擔保聲明,保持此許可證的聲明和沒有擔保的聲明完整無損,並和程序一起給每個其他的程序接受者一份許可證的副本,就可以用任何媒體複製和發布收到的原始的程序的源代碼。可以為轉讓副本的實際行動收取一定費用。也有權選擇提供擔保以換取一定的費用。

2、可以修改程序的一個或幾個副本或程序的任何部分,以此形成基於程序的作品。只要同時滿足下面的所有條件,就可以按前面第一款的要求複製和發布這一經過修改的程序或作品。
a、必須在修改的文件中附有明確的說明:修改了這一文件及具體的修改日期。
b、必須使發布或出版的作品(它包含程序的全部或一部分,或包含由程序的全部或部分衍生的作品)允許第三方作為整體按許可證條款免費使用。
c、如果修改的程序在運行時以交互方式讀取命令,必須使它在開始進入常規的交互使用方式時列印或顯示聲明:包括適當的版權聲明和沒有擔保的聲明(或者提供擔保的聲明);用戶可以按此許可證條款重新發布程序的說明;並告訴用戶如何看到這一許可證的副本。(例外的情況:如果原始程序以交互方式工作,它並不列印這樣的聲明,的基於程序的作品也就不用列印聲明)。

如果能夠確定作品的一部分並非程序的衍生產品,可以合理地認為這部分是獨立的,是不同的作品。當將它作為獨立作品發布時,它不受此許可證和它的條款的約束。但是當將這部分作為基於程序的作品的一部分發布時,作為整體它將受到許可證條款約束。准予其他許可證持有人的使用範圍擴大到整個產品。也就是每個部分,不管它是誰寫的。因此,本條款的意圖不在於索取權利;或剝奪全部由寫成的作品的權利。而是履行權利來控制基於程序的集體作品或衍生作品的發布。此外,將與程序無關的作品和該程序或基於程序的作品一起放在存貯體或發布媒體的同一卷上,並不導致將其他作品置於此許可證的約束範圍之內。

3、可以以目標碼或可執行形式複製或發布程序(或符合第2款的基於程序的作品),只要遵守前面的第1,2款,並同時滿足下列3條中的1條。

a、在通常用作軟體交換的媒體上,和目標碼一起附有機器可讀的完整的源碼。這些源碼的發布應符合上面第1,2款的要求。或者
b、在通常用作軟體交換的媒體上,和目標碼一起,附有給第三方提供相應的機器可讀的源碼的書面報價。有效期不少於3年,費用不超過實際完成源程序發布的實際成本。源碼的發布應符合上面的第1,2款的要求。或者
c、和目標碼一起,附有收到的發布源碼的報價信息。(這一條款只適用於非商業性發布,而且只收到程序的目標碼或可執行代碼和按b)款要求提供的報價)。作品的源碼指的是對作品進行修改最優先擇取的形式。對可執行的作品講,完整的源碼包括:所有模塊的所有源程序,加上有關的介面的定義,加上控制可執行作品的安裝和編譯的script。作為特殊例外,發布的源碼不必包含任何常規發布的供可執行代碼在上面運行的操作系統的主要組成部分(如編譯程序,內核等)。除非這些組成部分和可執行作品結合在一起。如果採用提供對指定地點的訪問和複製的方式發布可執行碼或目標碼,那麼,提供對同一地點的訪問和複製源碼可以算作源碼的發布,即使第三方不強求與目標碼一起複制源碼。

4、除非明確按許可證提出的要求去做,否則不能複製,修改,轉發許可證和發布程序。任何試圖用其他方式複製,修改,轉發許可證和發布程序是無效的。而且將自動結束許可證賦予的權利。然而,對那些從那裡按許可證條款得到副本和權利的人們,只要他們繼續全面履行條款,許可證賦予他們的權利仍然有效。

5、沒有在許可證上簽字,因而沒有必要一定接受這一許可證。然而,沒有任何其他東西賦予修改和發布程序及其衍生作品的權利。如果不接受許可證,這些行為是法律禁止的。因此,如果修改或發布程序(或任何基於程序的作品),就表明接受這一許可證以及它的所有有關複製,發布和修改程序或基於程序的作品的條款和條件。

GPLGPL
6、每當重新發布程序(或任何基於程序的作品)時,接受者自動從原始許可證頒發者那裡接到受這些條款和條件支配的複製,發布或修改程序的許可證。不可以對接受者履行這裡賦予他們的權利強加其他限制。也沒有強求第三方履行許可證條款的義務。

7、如果由於法院判決或違反專利的指控或任何其他原因(不限於專利問題)的結果,強加於的條件(不管是法院判決,協議或其他)和許可證的條件有衝突。他們也不能用許可證條款為開脫。在不能同時滿足本許可證規定的義務及其他相關的義務時,作為結果,可以根本不發布程序。例如,如果某一專利許可證不允許所有那些直接或間接從那裡接受副本的人們在不付專利費的情況下重新發布程序,唯一能同時滿足兩方面要求的辦法是停止發布程序。

如果本條款的任何部分在特定的環境下無效或無法實施,就使用條款的其餘部分。並將條款作為整體用於其他環境。本條款的目的不在於引誘侵犯專利或其他財產權的要求,或爭論這種要求的有效性。本條款的主要目的在於保護自由軟體發布系統的完整性。它是通過通用公共許可證的應用來實現的。許多人堅持應用這一系統,已經為通過這一系統發布大量自由軟體作出慷慨的供獻。作者/捐獻者有權決定他/她是否通過任何其他系統發布軟體。許可證持有人不能強制這種選擇。

8、如果由於專利或者由於有版權的介面問題使程序在某些國家的發布和使用受到限止,將此程序置於許可證約束下的原始版權擁有者可以增加限止發布地區的條款,將這些國家明確排除在外。並在這些國家以外的地區發布程序。在這種情況下,許可證包含的限止條款和許可證正文一樣有效。

9、自由軟體基金會可能隨時出版通用公共許可證的修改版或新版。新版和當前的版本在原則上保持一致,但在提到新問題時或有關事項時,在細節上可能出現差別。
每一版本都有不同的版本號。如果程序指定適用於它的許可證版本號以及「任何更新的版本」。有權選擇遵循指定的版本或自由軟體基金會以後出版的新版本,如果程序未指定許可證版本,可選擇自由軟體基金會已經出版的任何版本。

10、如果願意將程序的一部分結合到其他自由程序中,而它們的發布條件不同。寫信給作者,要求准予使用。如果是自由軟體基金會加以版權保護的軟體,寫信給自由軟體基金會。有時會作為例外的情況處理。的決定受兩個主要目標的指導。這兩個主要目標是:的自由軟體的衍生作品繼續保持自由狀態。以及從整體上促進軟體的共享和重複利用。

11、由於程序准予免費使用,在適用法准許的範圍內,對程序沒有擔保。除非另有書面說明,版權所有者和/或其他提供程序的人們「一樣」不提供任何類型的擔保。不論是明確的,還是隱含的。包括但不限於隱含的適銷和適合特定用途的保證。全部的風險,如程序的質量和性能問題都由來承擔。如果程序出現缺陷,承擔所有必要的服務,修復和改正的費用。

12、除非適用法或書面協議的要求,在任何情況下,任何版權所有者或任何按許可證條款修改和發布程序的人們都不對的損失負有任何責任。包括由於使用或不能使用程序引起的任何一般的,特殊的,偶然發生的或重大的損失(包括但不限於數據的損失,或者數據變得不精確,或者或第三方的持續的損失,或者程序不能和其他程序協調運行等)。即使版權所有者和其他人提到這種損失的可能性也不例外。

5 GPL -相關詞條

MYSQLIPICPALEXAPRSEO
CGIFSOFTPPOP3WCMECM
FLASHWEBGPUCPADIVCSS
HTMLBBS.NETXMLAJAXMD5

 

 

 

6 GPL -參考資料

1、http://www.cppblog.com/zhangji198543/archive/2006/05/01/6518.aspx
2、http://www.awflasher.com/blog/archives/939
3、http://docs.huihoo.com/open_source/GPL-chinese.html
上一篇[帕爾瓦蒂]    下一篇 [墨海馬]

相關評論

同義詞:暫無同義詞