GNU通用公共许可协议

**GNU 通用公眾授權條款**（英語：GNU General Public License，縮寫 GNU GPL 或 GPL），是被廣泛使用的自由軟體授權條款，給予了終端使用者運行、學習、共享和修改軟體的自由。授權條款最初由自由軟體基金會的理察・斯托曼為 GNU 項目所撰寫，並授予計算機程式的使用者自由軟體定義（The Free Software Definition）的權利。GPL 是一個 Copyleft 授權條款，這意味著只要項目的某個部分（如動態連結庫）以 GPL 發佈，則整個專案以及衍生作品只能以相同的許可條款分發。這與寬鬆自由軟體授權條款有所區別 ，如 BSD 授權條款和 MIT 授權條款就是其中被廣泛使用的例子。GPL 是第一個普遍使用的 Copyleft 授權條款。

歷史上，GPL 授權條款系列一直是自由和開源軟體領域最受歡迎的軟體許可之一。根據 GPL 許可的優異自由軟體程式的例子有 Linux 核心和 GNU 編譯器集合（GCC）。大衛・A・惠勒認為，GPL 提供的 Copyleft 對於基於 Linux 的系統的成功至關重要，給予向核心貢獻的程式員保證他們的工作將有益於整個世界並保持自由，而不至於被不提供回饋給社群的無良軟體公司所剝削。

2007 年，發布了第三版授權條款（GNU GPLv3），以解決在長期使用期間發現的第二版（GNU GPLv2）所發生的一些困擾。為了使授權條款保持最新狀態，GPL 授權條款包含一個可選的「並延伸到未來版本」條款，允許使用者在 FSF 更新的原始條款或新版本之間進行選擇。有些開發人員在軟體授權使用時，選擇省略它；例如，Linux 核心已經在 GPLv2 下獲得許可，就不需包括「並延伸到未來版本」的聲明。

GPL 授予程式接受人以下權利，或稱「自由」，或稱「copyleft」：

* 基於任何目的，按你的意願執行軟體的自由（自由之零）。
* 學習軟體如何工作的自由，按你的意願修改軟體以符合你的計算的自由（自由之一）。可存取原始碼是此項自由的先決條件。
* 分發軟體副本的自由，因此你可以幫助你的好友（自由之二）。
* 將你修改過的軟體版本再分發給其他人的自由（自由之三）。這樣可以讓整個社群有機會共享你對軟體的改動。可存取原始碼是此項自由的先決條件。

相反地，隨著作權所有軟體的終端使用者授權條款幾乎從不授予使用者任何權利（除了使用的權利），甚至可能限制一些法律允許的行為，比如還原工程。

GPL 與其他一些更「許可的」自由軟體授權條款（比如 BSD 授權條款）相比，主要區別就在於 GPL 尋求確保上述自由能在複製軟體及衍生作品中得到保障。它通過一種由斯托曼發明的叫 Copyleft 的法律機制實現，即要求 GPL 程式的衍生作品也要在 GPL 之下。相反，BSD 式的授權條款並不禁止改作作品變成專有軟體。

GPL 是自由軟體和開源軟體的最流行授權條款。到 2004 年 4 月，GPL 已占 Freshmeat 上所列的自由軟體的約 75%，SourceForge 的約 68%。類似的，2001 年一項關於 Red Hat Linux 7.1 的調查顯示一般的代碼都以 GPL 發布。著名的 GPL 自由軟體包括 EMACS，Linux 核心（並非所有 Linux 發行版的核心都是開源的）和 GCC。

## 歷史

GPL 由理察・斯托曼於 1989 年編寫，提供給列入 GNU 專案的一些軟體程式所使用。原始的 GPL 基於 GNU Emacs（1985），GNU Debugger 和 GNU C 編譯器的早期版本中使用的類似授權條款的統一。這些授權條款包含與現代 GPL 類似的規定，但具體針對每個程式，使其不相容，儘管是相同的授權條款。Stallman 的目標是提供一個可用於任何專案的授權證，從而使許多專案得以共享代碼。GPL 版本 1 就這樣，在 1989 年 1 月誕生。

到 1990 年時，某些因素使得程式庫（Library），應該要有比 GPL 更寬鬆的授權許可的需求。所以當 GPL 版本 2 在 1991 年 6 月發布，另一授權條款 —— 程式庫通用授權證（Library General Public License，簡稱 LGPL）也隨之誕生，並記作「版本 2」以示對 GPL 的補充。版本號在 LGPL 版本 2.1 發布時不再相同，而 LGPL 也被重新命名為 GNU 寬通用公眾授權條款以體現 GNU 的哲學觀。

授權條款的第二個版本，版本 2，在 1991 年發布。在接下來的 15 年中，自由軟體社群的成員很關心 GPLv2 授權條款中的問題，可能會讓某些人鑽漏洞而違反授權條款，而違背了原先 GPL 許可授權軟體的原意。這些問題包括 Tivo 化（來自硬體的軟體限制，意指將 GPL 授權軟體安裝在硬體上，又拒絕運行更動相關軟體的修改版本），類似與 Affero 通用公眾授權條款類似的相容性問題，以及微軟和自由開源軟體，其中一些被認為試圖將專利申請用作於對付自由軟體社群的武器。

第 3 版旨在解決這些問題，並於 2007 年 6 月 29 日正式發布。

## 用語

根據創用 CC 官方網站，GNU General Public License 的台灣法律用語翻法為「GNU 通用公共授權條款」，香港法律用語翻法亦為如此。

### GPLv1

1989 年 2 月 25 日發布的 GNU GPL 版本 1 阻止了軟體經銷商限制自由軟體定義的兩個主要方式。第一個問題是經銷商可能僅發布二進制檔案 - 可執行，但不能由人類讀取或修改。為了防止這種情況，GPLv1 表示，任何分發二進制代碼的供應商還必須按照相同的許可條款（授權條款的第 3a 和 3b 節）提供可讀的原始碼。

第二個問題是經銷商可能會增加授權條款的限制，也可能會將軟體與其他具有其他分發限制的軟體相結合。兩套限制的聯合將適用於組合工作，從而增加不可接受的限制。為了防止這種情況，GPLv1 表示，修改後的版本作為一個整體，必須按照 GPLv1（授權條款第 2b 和 4 節）的條款分發。因此，根據 GPLv1 條款分發的軟體可以以更寬鬆的條款與軟體相結合，因為這不會改變整體可以分發的條款。然而，根據 GPLv1 分發的軟體不能與在更嚴格的授權條款下分發的軟體相結合，因為這與根據 GPLv1 的條款可以分發的要求相衝突。

### GPLv2

根據理察・斯托曼的說法，GPLv2 的主要變化是「自由或死亡」（Liberty or Death）條款。就如字面上所說，「被許可人只有在滿足所有授權條款的義務下」才可以分發包含 GPL 授權的軟體，儘管他們可能擁有任何其他法律義務。換句話說，就算有相互矛盾的義務，授權條款的義務也可能不被切斷。該條款旨在阻止任何一方使用專利侵權索賠或其他訴訟來損害使用者在授權條款下的自由。這章中的意思是，為了在一定程度上保障和尊重其它一些人的自由和權益，無論任何人要發布源於 GPL 的軟體的時候，同時也須遵守強制的條款分享原始碼，否則他將根本無權發布該軟體。

到 1990 年，越來越明顯的是，對於 C 函式庫來說，本質上已經跟受專利保護的軟體函式庫的功能表現相當，有一個限制較少授權條款對於自由軟體發展的策略上來說更為實用；因此，當 GPL 的版本 2（GPLv2）在 1991 年 6 月發佈時，第二類別的授權條款：函式庫通用公眾授權條款（英語：Library General Public License），也同時被引入，並從第二版編號開始，表明兩者是互補的。版本號在 1999 年發行，當時 LGPL 的版本 2.1 被發布，更名為 GNU 寬鬆通用公眾授權條款（英語：**Lesser** General Public License），以反映其在哲學中的地位。

最常見的是「GPLv2 並延伸到未來版本」的聲明，讓授權條款的使用者了解，得以允許升級到 GPLv3。

### GPLv3

到 2005 年，GPL 版本 3 開始由斯托曼起草，由伊本・莫格林和軟體自由法律中心（Software Freedom Law Center）提供法律咨詢。2005 年底，自由軟體基金會 （FSF）宣布了 GPL（GPLv3）第 3 版的工作。2006 年 1 月 16 日，公佈了 GPLv3 的第一個「討論稿」，公眾諮詢開始。公眾諮詢原計劃為九至十五個月，但最終延長至十八個月，其中出版四份草案。2007 年 6 月 29 日，官方正式版 GPLv3 於由 FSF 發布。

之後，理察・斯托曼在 2006 年 2 月 25 日自由及開源軟體開發者歐洲會議的演講時談到最重要的四件事：

* 解決軟體專利問題；
* 自由軟體授權條款與其它商用許可的相容性問題；
* 原始碼分割與組成的定義；
* 解決數位版權管理的問題，意即反軟體修改的硬體限制。

還有一些其他的更改涉及國際化，如何處理授權條款違規，以及著作權所有者如何授予額外權限。它還增加了一項規定，「剝離」（strips）其法定價值的數位版權管理（Digital Rights Management，縮寫 DRM），所以人們可以合理的當在法院被視為侵犯 DRM 時，去破解運行 GPL 軟體的任何東西，而不會違反 DMCA 等法律。

公共諮詢過程由自由軟體基金會在軟體自由法律中心、歐洲自由軟體基金會和其他自由軟體組織的協助下進行協調。通過 FSF [1] （頁面存檔備份，存於網際網路檔案館）網站從公眾收集評論。該門戶網站運行名為 stet 的專用軟體。在公眾諮詢過程中，提交了第一稿的 962 條意見。最後，共提交了 2636 條意見。

第三稿於 2007 年 3 月 28 日發布。該草案包括旨在防止與專利相關協定（如有爭議的 Microsoft-Novell 專利協定）的語言 ，並將反傾銷條款限於「使用者」或「消費品」。它還明確刪除了「地理限制」一節，確認公開諮詢開始時就提到可能會刪除的這一部分。

最後的第四個討論草案於 2007 年 5 月 31 日發布。它引入了 Apache 授權條款版本 2.0 相容性（以前的版本不相容），澄清了外部承包商的作用，並提出了一個例外，以避免充滿爭議的 Microsoft-Novell 專利協定再度發生，在第 11 節第 6 段中說：

這旨在使未來像這樣的交易無效。該授權條款還意味著 Microsoft 將其授予 Novell 客戶的專利授權條款擴展到使用 GPLv3 軟體的所有使用者，使用 GPLv3 軟體；除非當 Microsoft 合法地是 GPLv3 軟體的「傳送者」時，才有可能。

此外，GPLv3 的早期草案讓許可方添加了一個 Affero 類的需求，將會填補 GPL 中的 ASP 漏洞。由於擔憂該附加要求的代碼檢查所需要的額外行政費用，決定將 GPL 和 Affero 授權條款分開。

值得留意的是 Linux 核心的一些高調的開發人員 ，例如林納斯・托瓦茲、葛雷格・克羅哈曼和安德魯・莫頓，向大眾媒體發表了評論，並就討論草案 1 和 2 的部分內容作了公開聲明。核心開發人員提及關於 DRM/Tivoization、專利和「附加限制」的 GPLv3 草案條款，並警告會產生「開源宇宙」（Open Source Universe）的巴爾幹半島式分裂。林納斯・托瓦茲決定不採用 GPLv3 作為 Linux 核心，仍然使用 GPLv2 授權，甚至在幾年後重申了他的批評。此事曾引起理察・斯托曼的不滿。

GPLv3 提高了與許多開放原始碼軟體授權條款（如 Apache 授權條款版本 2.0）和 GNU Affero 通用公眾授權條款（GPLv2 無法組合）的相容性。但是，如果所使用的 GPLv2 授權條款具有可選的「或更高版本」子句，並且軟體升級到 GPLv3，GPLv3 軟體只能與 GPLv2 軟體組合併共享代碼。雖然 FSF 認為「GPLv2 並延伸到未來版本」條款是許可 GPLv2 軟體的最常見形式，諸如 Toybox 開發商 Rob Landley 將其描述為「救生艇條款」（lifeboat clause）。使用可選「或更高版本」條款許可的軟體項目包括 GNU 項目，而沒有該子句的最明顯的案例是 Linux 核心。

授權條款文字的最終版本於 2007 年 6 月 29 日由自由軟體基金會正式發布。

## 條款和條件

GPL 的條款和條件必須提供給任何接受 GPL 應用的作品的副本（「被許可人」）的人員。任何遵守條款和條件的被授證人員都有權修改作品，以及複製和重新分發作品或任何衍生版本。被許可人被允許為此服務收取費用，或無償。後一點將 GPL 與禁止商業再分發的軟體許可區分開來。FSF 認為，自由軟體不應該限制商業用途，GPL 明確規定 GPL 作品可能以任何價格出售。

GPL 還規定，經銷商不得對 GPL 授予的權利施加「進一步限制」。禁止根據不披露協定或合同分發軟體等活動。

授權條款版本 2 的第四部分和版本 3 的第七部分要求，作為預編譯二進製檔案分發的程式應附有原始碼的副本，通過與前一版本相同的機制分發原始碼的書面報價編譯的二進制檔案或書面報價，以獲取使用者在 GPL 下接收預編譯二進制檔案時獲得的原始碼。版本 2 的第二部分和版本 3 的第五部分還要求「所有收件人本程式附帶的授權條款副本」。授權條款的版本 3 允許以其他方式提供原始碼來實現第七部分。這些包括從相鄰網路伺服器下載原始碼或通過對等傳輸，只要編譯代碼是可用的，並且在哪裡可以找到原始碼的「清晰方向」。

除非作者明確賦予 FSF 著作權（除了作為 GNU 項目一部分的程式很少發生），否則 FSF 對 GPL 發布的作品不具有著作權。只有個人著作權持有人有權在發生授權條款時才起訴。

## 使用許可軟體

GPL 下的軟體可以用於所有目的，包括商業目的，甚至作為建立專有軟體的工具，例如使用 GPL 授權的編譯器時。分發 GPL 許可作品（如軟體）的使用者或公司可能會收取副本費用或無償提供費用。這將 GPL 與共享軟體授權條款區分開來，允許複製用於個人使用，但禁止商業發佈，或著作權法禁止複制的專有許可。FSF 認為自由軟體不應該限製商業使用和發佈（包括再發佈）。GPL 明確規定，GPL 工作可能以任何價格出售。

在純私人（或內部）使用 - 沒有銷售和沒有發行 - 軟體代碼可能被修改和零件重複使用，而不需要發布原始碼。對於銷售或分銷，整個原始碼需要提供給最終使用者，包括任何代碼更改和添加 - 在這種情況下，應用 copyleft 來確保最終使用者保留上面定義的自由。

然而，作為 GPL 許可作業系統（如 Linux）下的應用程式運行的軟體不需要根據 GPL 進行許可或者以原始碼可用性分發 - 許可只依賴於使用的庫和軟體組件，而不是依賴於底層平台。例如，如果一個程式僅由自己的原始客製化軟體組成（software component），或者與其他軟體組件的原始碼組合在一起，則自己的客製化軟體組件不需要根據 GPL 授權，不需要使其代碼可用；即使所使用的底層作業系統是根據 GPL 授權的，運行在其上的應用程式也不被視為衍生作品。只有在程式中使用了 GPLed 部件（程式已經分發）的情況下，程式的所有其他原始碼才能在相同的許可條款下提供。GNU 較寬鬆公眾授權條款（LGPL）被建立為具有比 GPL 更弱的 Copyleft，因為它不需要在相同的許可條款下提供自己客製化的原始碼（不同於 LGPLed 部分）。

### Copyleft

GPL 授權版本的修改後作品的發行權不是無條件的。當有人分發 GPL 的作品又加上自己的修改時，分發整個作品的要求不能大於 GPL 中的要求。這個要求被稱為 Copyleft。它通過軟體程式使用著作權獲得法律權力。由於 GPL 的作品受著作權保護，被許可人無權重新分發，即使是以修改形式（除合理使用 ）外，除了許可條款外， 如果希望行使通常受著作權法限制的權利，例如重新分配，只需遵守 GPL 的條款。相反，如果在不遵守 GPL 條款（例如保留原始碼秘密）的情況下分發作品的副本，則原始作者可以根據著作權法提起訴訟。因此，「Copyleft 使用著作權法來完成」與常見法律的設定目的相反，不是施加限制，而是「賦予其他人權利，以確保權利不能隨之被剝奪的方式。」如果在 Copyleft 聲明中找到任何法律缺陷，它也可以確保不給予無限的重新分發權限。

許多 GPL 程式的經銷商將原始碼與可執行檔案捆綁在一起。滿足 Copyleft 的替代方法是提供書面報價，以便在物理介質（如 CD）上提供原始碼。實際上，許多 GPL 的程式通過 Internet 進行分發，原始碼通過 FTP 或 HTTP 提供。對於網際網路分發，這符合授權條款。只有當一個人試圖重新分發程式時，Copyleft 才適用。只要不將修改後的軟體分發給任何人，開發人員可以製作私有修改版本，無需洩露修改。請注意，Copyleft 僅適用於軟體，而不適用於其輸出（除非該輸出本身是程式的衍生作品）。

例如，運行 GPL 內容管理系統（CMS）修改版的衍生產品之公共門戶網站不需將其更動分發給底層軟體，因為其輸出不是衍生產品。

有人辯論，如果以程式碼混淆形式發布原始碼是否違反 GPL，例如在作者不太願意提供原始碼的情況下。普遍認為雖然這是不道德的，但無法認為是違法行為。這問題已得到澄清：當授權條款被更改為 v2 時，就需要提供原始碼的「首選」版本。

### 授權條款與合同的區別

GPL 被設計為授權條款 ，而不是契約。在一些普通法（Common Law）司法管轄區，授權條款和契約之間的法律區別是重要的：契約可以通過契約法執行，而授權條款是根據著作權法執行的。然而，這種區別對於契約和授權條款之間沒有區別的許多司法管轄區（如民法系統）並不適用。

GPL 原理很簡單：在著作權法下，你不遵守 GPL 的條款和條件你就沒有相對應的權利。而作品在沒有 GPL 的情況下，著作權法作為默認條款發生效力，而不是作品進入公有領域。那些不接受 GPL 條款和條件的人根據著作權法沒有許可複製或分發 GPL 許可軟體或衍生作品。然而，如果他們不重新分發 GPL 的程式，他們仍然可以按自己的喜好使用組織內的軟體，使用該程式構建的工程（包括程式）不需要被該授權條款覆蓋。

艾里遜・蘭德爾認為，GPLv3 作為授權條款對於讀者來說是不必要的混亂，可以在保留相同的條件和法律效力的情況下進行簡化。

## 衍生或擴展性

GPL 的文案本身，受著作權保護 ，著作權由自由軟體基金會持有。GPL 的文案本身，卻不在 GPL 之下。 經許可的著作權不允許修改授權條款。 允許複製和分發授權條款，因為 GPL 要求收件人獲得「本授權條款與本計劃一起」的副本。 [62] 根據 GPL 常見問題，任何人都可以使用 GPL 的修改版本，只要他或她使用不同的名稱作為授權條款，不提「GNU」，並刪除前言，儘管如果使用自由軟體基金會（FSF）獲得許可，則序言可以在修改後的授權條款中使用。

FSF 允許人們根據 GPL 建立新的授權條款，只要衍生的授權條款未經許可不使用 GPL 前綴。 然而，這是不鼓勵的，因為這樣的授權條款可能與 GPL 不相容，並導致感染的授權條款擴散（license proliferation）。

由 GNU 項目建立的其他授權條款包括 GNU 通用公眾授權條款，GNU 自由檔案授權條款和 Affero 通用公眾授權條款。

## 鏈結和衍生作品

### 爭議：非 GPL 軟體是否可以合法地鏈結或動態地鏈結到 GPL 函式庫

據 FSF 稱，「GPL 不要求您發布修改版本，或其任何部分，您可以自由地進行修改和留作私人使用，而無需發布。」然而若是向公眾發布 GPL 許可的實體，則有鏈結的問題：換言之，「使用 GPL 函式庫的專利程式是否違反了 GPL ？」

這個關鍵的爭議的重點是「非 GPL 軟體是否可以合法地鏈結或動態地鏈結到 GPL 函式庫」。這個問題有不同的看法。GPL 清楚地表明，GPL 下的所有衍生作品代碼都必須屬於 GPL。關於使用 GPL 函式庫和將 GPL 軟體捆綁到更大的包中（可能通過靜態鏈結混合成二進制檔案），會出現歧義。這最終不是 GPL 本身的問題，而是著作權法如何界定衍生作品。有以下觀點存在：

### 觀點：動態和靜態鏈結違反 GPL

自由軟體基金會（其擁有若干著名的 GPL 軟體產品和授權文字本身的著作權）聲稱，使用動態鏈結函式庫的可執行檔確實是衍生作品。然而，這不適用於彼此通信的單獨程式。自由軟體基金會還建立了 LGPL，LGPL 與 GPL 極為相似，但額外允許以「使用函式庫」為目的的鏈結。理察・斯托曼和自由軟體基金會特別鼓勵函式庫作者根據 GPL 來進行授權，以便專有程式無法使用 GPL 函式庫，透過為自由軟體世界提供比專有世界更多的工具來保護自由軟體世界。

### 觀點：靜態連結違反 GPL，但動態連結則有待釐清

有些人認為，當靜態連結產生衍生作品時，不清楚動態連結到 GPL 代碼的可執行檔是否應被視為衍生作品（請參閱 Weak Copyleft）。Linux 作者 Linus Torvalds 同意動態連結可以建立衍生作品，但在這種情況下不一致。一位 Novell 律師寫道，動態連結不算是衍生作品的觀點合理但是不夠明確，專有的 Linux 核心驅動程式就是善意的動態連結的一大明證。在 Galoob 對任天堂案中，美國第九巡迴上訴法院將衍生作品定義為具有「形式」或「永久性」，並指出「侵權作品必須以某種形式包含一部分受著作權保護的作品」，但是沒有明確的法院裁決來解決這一特定的衝突。

### 觀點：鏈結無關

根據 Linux Journal 的一篇文章， Lawrence Rosen （一次性開源計劃總顧問）認為，鏈結的方法與一個軟體是否是衍生作品的問題大不相干；更重要的是關於軟體是否旨在與客戶端軟體和 / 或庫連接的問題。他指出：「新程式是否是衍生工作的主要指示是原始程式的原始碼是否以 [複製粘貼方式] 使用，以任何方式進行修改，翻譯或以其他方式更改新程式，如果沒有，那麼我會認為這不是衍生工作「，並列出了關於意圖，捆綁和聯動機制的許多其他觀點。 他進一步在他公司的網站上論證，這種「以市場為基礎」的因素比鏈結技術更重要。

還有一個具體問題是，一個外掛程式或模組（如 NVidia 或 ATI 顯示卡核心模組）是否也必須是 GPL，如果它可以合理地被認為是自己的工作。這個觀點表明，如果工作是 GPLv2，則可以根據任意授權條款，為設計使用外掛程式的軟體提供合理的單獨外掛程式或外掛程式。特別感興趣的是 GPLv2 段落：

GPLv3 有一個不同的條款：

作為一個案例研究，一些據稱為 GPLv2 CMS 軟體（如 Drupal 和 WordPress）的專有外掛程式和主題 / 外觀已經受到打擊，雙方均被採納

FSF 區分外掛程式如何被調用。如果通過動態鏈結調用外掛程式，並且它對 GPL 程式執行函式調用，那麼它很有可能是衍生工作。

### 與非 GPL 程式的通訊和綁妥

與其他程式通訊的行為本身並不要求所有軟體都是 GPL；也不用 GPL 軟體分發 GPL 軟體。但是，必須遵循較小的條件，確保 GPL 軟體的權利不受限制。 以下是 gnu.org 的 GPL FAQ，該常見問題解答介紹了允許軟體與 GPL 程式進行通訊和綁妥的程度：

因此，FSF 想在「函式庫」和「其他程式」之間透過以下兩種方式劃清界線： 1）資訊交換的「複雜性（complexity）」和「親密程度（intamacy）」；2）資訊交換的「機構（mechanics）「，而不是「語義（semantic）」。但讓問題不明確，而又複雜的情況下，交由判例法來決定。

## 著作權所有人

GPL 文字是著作權所有的，且著作權人是自由軟體基金會。但是，自由軟體基金會沒有在 GPL 下發行作品的著作權（除非作者指定自由軟體基金會是著作權人）。通常認為，只有著作權人才有權對授權條款的違反進行起訴，但是那並不准確。法國的一個教育組織 AFPA 於 2000 年從 Edu4 購買課堂使用的計算機裝置發現其使用 GPL 軟體但並未附帶原始碼。 

自由軟體基金會允許人們使用以 GPL 為基礎的其他授權條款，但不允許演繹的授權條款未經授權地使用 GPL 的前言。不過像這樣的授權條款通常與 GPL 不相容。

GNU 計劃創立的其他授權條款包括：GNU 寬通用公眾授權條款和 GNU 自由文檔許可證。

## 爭議

一個關於 GPL 重要的爭議是，非 GPL 軟體是否可以動態鏈結到 GPL 庫。 GPL 對 GPL 作品的演繹作品在 GPL 下發布規定很明確。但是對於動態鏈結到 GPL 庫的作品是否是演繹作品就規定得不清楚了。自由和開放原始碼社區為此分成兩派，自由軟體基金會認為這種作品就是演繹作品，但其他專家並不同意。這個問題根本的並不關乎 GPL 本身，而是一個著作權法如何定義演繹作品。美國聯邦上訴法院第九巡迴審判庭在 Galoob v. Nintendo 案對演繹作品嘗試定義，但最終沒有明確的結果。

不幸的是，許多開發者覺得這是個技術問題。但實際上這完全是法律問題。不過由於迄今為止沒有案例表明有人以動態鏈結的方式來繞過 GPL 的條款或者並被起訴，動態鏈結的限制已經是事實上地（de facto）有效，不論它是否是法律上地（de jure）有效。

2002 年，MySQL AB 公司起訴 Progress NuSphere 侵犯著作權和商標。 NuSphere 被指以鏈結代碼的形式侵犯了著作權。最終此案以調解結束。在聽證期間，法官「認為沒有什麼原因」（不管是否是動態鏈結）會使得 GPL 失去法律效力。

2003 年 8 月，SCO Group 稱他們認為 GPL 沒有法律效力，且準備就在 Linux 核心中使用的 SCO Unix 代碼進行訴訟。參見 SCO 訴 IBM。

2004 年 4 月，在 SiteCom 拒絕停止發行 Netfilter 項目的 GPL 軟體後，慕尼黑地區法庭據對 GPL 條款的侵犯判定對 SiteCom 進行臨時性禁令（訴前停止侵犯專利權行為的措施）。同年 7 月，法庭確認此勒令為對 SiteCom 最終判決。此判決明顯的印證了自由軟體基金會的法律顧問伊本・莫格林的預言：

　
: 「被告侵犯了原告的著作權：提供了軟體 netfilter/iptables 的廣告及下載，但沒有遵守 GPL 的條款。可以說，如果被告有授權條款許可，這些行為是完全合法的…… 原被告就 GPL 是否達成協定這是一個獨立的問題。如果當事人沒有同意，被告將沒有複製、發行、公開 'netfilter/iptables' 的權利。」

此判決十分重要，因為它是全球首次法庭確認 GPL 是有法律效力的。

2005 年 5 月，Daniel Wallace 於美國聯邦印第安納南區地方法院起訴自由軟體基金會，因為二者對 GPL 是否非法意見不一。後訴訟於 3 月結束，因為 Wallace 沒有有效的反托拉斯陳述。法庭注意到「GPL 鼓勵，而不是反對電腦作業系統的自由競爭和發行，這直接使消費者受益。」Wallace 被拒絕改變訴由，並被要求支付訴訟費用。

## 相容性

大多數自由軟體授權條款，比如 MIT/X 授權條款、BSD 授權條款、LGPL，都是「 GPL 相容的」，即它們的代碼與 GPL 代碼混用無衝突（但新代碼則是 GPL 下的）。但是有某些開源軟體授權條款不是 GPL 相容的。通常意見是開發者僅只使用 GPL 相容的授權條款，以免法律問題。

參見軟體授權條款列表以查證相容性。

## 批評

2001 年微軟的首席執行官史蒂夫・巴爾默稱 Linux 為「癌症」，因為 GPL 的影響。微軟批評者指出，微軟憎惡 GPL 的真正原因是因為 GPL 對微軟的「包圍、擴展、消滅」策略起了反作用。注意微軟已以 GPL 為授權條款發行了 SFU（Microsoft Windows Services for UNIX）中所包含的部分組件，例如 GCC。

GPL 的批評者常常認為 GPL 是有「傳染性」的「病毒」，因為 GPL 條款規定演繹作品也必須是 GPL 的。由於「演繹作品」通常被解釋為包含 GPL 代碼或動態鏈結到 GPL 庫（如上）的軟體，「病毒說」來源於 GPL 對於授權條款的強制繼承的要求。這正是 GPL 與 BSD 式授權條款的哲學思想上的差異。 GPL 的支持者確信自由軟體世界應具有自我保護能力和可持續發展性 —— 確保自由軟體的演繹作品同樣「自由」，但其他人認為自由軟體應給予「所有人」最大的自由。

不同版本之間的 GPL 並不相容。例如，當原始的作品以 GPLv2 發布，而補丁以 GPLv3 發佈時，因為這樣的原因，其編譯之後產生的二進製版本不可以再行傳播。因此，FSF 通常會推薦以「GPLv2 or later」這樣的形式來標示授權授權條款，或 GPLv2 + GPLv3 雙授權條款以規避這一問題。

## 注釋

## 參見

* GNU Affero 通用公眾授權條款
* GNU 自由文檔許可證
* GNU 寬通用公眾授權條款
* GNU 通用公眾授權條款版本 3 討論草稿 1（英文）
* BSD 授權條款
* Mozilla 公眾授權條款
* 軟體授權條款列表
* GNU 自由檔案授權條款
* MIT 授權條款
* Apache 授權條款
* 寬鬆開放著作權授權條款

## 參考文獻

## 外部連結

* （英文）GNU 通用公眾授權條款版本 1.0 官方文字 （頁面存檔備份，存於網際網路檔案館）
* （英文）GNU 較寬鬆公共許可證版本 2.1 官方文字（頁面存檔備份，存於網際網路檔案館）
* （英文）GNU 通用公眾授權條款版本 3 官方文字（頁面存檔備份，存於網際網路檔案館）
* （英文）GPL FAQ（頁面存檔備份，存於網際網路檔案館）
* （英文）踐行 GNU GPL （頁面存檔備份，存於網際網路檔案館），Eben Moglen，2001 年 9 月 10 日
* （英文）GPL-Violations.org－監視侵犯 GPL 的網站
* （英文）GPL 2.0（CC 版） （頁面存檔備份，存於網際網路檔案館）
* （簡體中文）GPLv2 非正式簡體中譯本（含多種檔案類型） （頁面存檔備份，存於網際網路檔案館）
* （簡體中文）GPLv3 的非官方簡體中文譯本 （頁面存檔備份，存於網際網路檔案館）
* （繁體中文）GPLv3 非官方正體中文譯本 （頁面存檔備份，存於網際網路檔案館）