登錄

GPL

百科 > 軟件 > GPL

1.什么是GPL

  GPL是一個廣泛被使用的自由軟件許可協(xié)議條款,最初由理查德·斯托曼(Richard Matthrew Stallman)為GNU計劃而撰寫。

2.GPL的權(quán)利

  GPL授予程序接受人以下權(quán)利,或稱“自由”:

  以任何目的運(yùn)行此程序的自由;

  再發(fā)行復(fù)制件的自由;

  改進(jìn)此程序,并公開發(fā)布改進(jìn)的自由(前提是能得到源代碼)。

  相反地,隨版權(quán)所有軟件的最終用戶許可證幾乎從不授予用戶任何權(quán)利(除了使用的權(quán)利),甚至可能限制法律允許的行為,比如逆向工程。

  GPL與其他一些更“許可的”自由軟件許可證(比如BSD許可證)相比,主要區(qū)別就在于GPL尋求確保上述自由能在復(fù)制件及演繹作品中得到保障。它通過一種由斯托曼發(fā)明的叫Copyleft的法律機(jī)制實(shí)現(xiàn),即要求GPL程序的演繹作品也要在GPL之下。相反,BSD式的許可證并不禁止演繹作品變成專有軟件。

  由于某些原因,GPL成為了自由軟件和開源軟件的最流行許可證。到2004年4月,GPL已占Freshmeat上所列的自由軟件的約75%,SourceForge的約68%。類似的,2001年一項關(guān)于Red Hat Linux 7.1的調(diào)查顯示一般的代碼都以GPL發(fā)布。著名的GPL自由軟件包括Linux核心和GCC。

3.GPL的歷史

  GPL由斯托曼撰寫,用于GNU計劃。它以GNU Emacs、GDB、GCC的許可證的早期版本為藍(lán)本。這些許可證都包含有一些GPL的版權(quán)思想,但僅只針對特定程序。斯托曼的目標(biāo)就是創(chuàng)造出一種四海之內(nèi)皆可使用的許可證,這樣就能為許多源代碼共享計劃帶來福音。GPL版本1就這樣,在1989年1月誕生。

  到1990年時,因?yàn)橐恍┕蚕韼於霈F(xiàn)了對比GPL更寬松的許可證的需求。所以當(dāng)GPL版本2在1991年6月發(fā)布時,另一許可證——程序庫通用許可證(Library General Public License,簡稱LGPL)也隨之發(fā)布,并記作“版本2”以示對GPL的補(bǔ)充。版本號在LGPL版本2.1發(fā)布時不再相同,而LGPL也被重命名為GNU寬通用公共許可證以體現(xiàn)GNU哲學(xué)觀。

  GPLv1

  GPL版本1,即最初的版本,發(fā)布于1989年一月,其目的是防止那些阻礙自由軟件的行為,而這些阻礙軟件開源的行為主要有兩種(一種是軟件發(fā)布者只發(fā)布可執(zhí)行的二進(jìn)制代碼而不發(fā)布具體源代碼,一種是軟件發(fā)布者在軟件許可加入限制性條款)。因此按照GPLv1,如果發(fā)布了可執(zhí)行的二進(jìn)制代碼,就必須同時發(fā)布可讀的源代碼,并且在發(fā)布任何基于GPL許可的軟件時,不能添加任何限制性的條款。

  GPLv2

  理查德·斯托曼在GPLv2中所做的最大的改動就是增加了“自由還是死亡”("Liberty or Death")這章條款,即第七章liberty-or-death Presentation。這章中申明道,如果哪個人在發(fā)布源于GPL的軟件的時候,同時添加強(qiáng)制的條款,以在一定程度上保障和尊重其它一些人的自由和權(quán)益(也就是說在一些國家里,人們只能以二進(jìn)制代碼的形式發(fā)布軟件,以保護(hù)開發(fā)軟件者的版權(quán)),那么他將根本無權(quán)發(fā)布該軟件。

  到了1990年,人們普遍認(rèn)為一個限制性弱的許可證對于自由軟件的發(fā)展是有戰(zhàn)略意義上的好處的;因此,當(dāng)GPL的第二個版本(GPLv2)在1991年6月發(fā)布時,與此同時第二個許可證程序庫GNU通用公共許可證(LGPL, Library General Public License)也被發(fā)布出來并且一開始就將其版本定為第2版本以表示其和GPLv2的互補(bǔ)性。這個版本一直延續(xù)到1999年,并分支出一個派生的LGPL版本號為2.1,并將其重命名為輕量級通用公共許可證(又稱寬通用公共許可證,Lesser General Public License)以反映其在整個GNU哲學(xué)中的位置。

  GPLv3

  到2005年,GPL版本3正由斯托曼起草,由伊本·莫格林和軟件自由法律中心(Software Freedom Law Center)提供法律咨詢。

  斯托曼在2006年2月25日自由及開源軟件開發(fā)者歐洲會議的演講上說:

  在所有的改動中,最重要的四個是:

  解決軟件專利問題;

  與其他許可證的兼容性;

  源代碼分區(qū)和組成的定義;

  解決數(shù)位版權(quán)管理問題。

  2006年,自由軟件基金會針對GPL的可能的修改開始了12個月的公共咨詢。

  在公眾咨詢過程中,有962條評論被提交給第一稿草稿。 最終總共有2,636條評論被提交。

  GPLv3草稿于2006年1月16日開始可用。

  2007年3月28日正式啟用。

  2007年6月29日,自由軟件基金會正式發(fā)布了GPL第3版。

  但是Linux社區(qū)的領(lǐng)導(dǎo)者林納斯·托瓦茲等人決定不讓Linux使用第三版授權(quán),仍然使用版本2與版本3授權(quán)。此事曾引起理查德·斯托曼的不滿。

4.GPL條款

  以下是對GPL條款的一個通俗易懂的總結(jié)。而GPL原文文本才是真正法律上精確的。

  授予的權(quán)利

  此GPL的條款和條件適用于任何收到GPL下的作品的人(即“許可證接受人”)。任何接受這些條款和條件的許可證接受人都有修改、復(fù)制、再發(fā)行作品或作品的演繹版本的授權(quán)。許可證接受人可以對此項服務(wù)收取費(fèi)用 ,反之亦然。這一點(diǎn)是GPL與其他禁止商業(yè)用途的自由軟件許可證最大的不同。Stallman認(rèn)為自由軟件不應(yīng)限制其商業(yè)用途,同時GPL清楚地說明了這一點(diǎn)。

  但GPL又規(guī)定發(fā)行者不能限制GPL授予的權(quán)利。例如,這禁止對軟件在單純沉默(消極默示)式協(xié)議或合同下的發(fā)行。GPL下的發(fā)行者同時也同意在軟件中使用的專利可以在其它GPL軟件中使用。

  Copyleft

  GPL不會授予許可證接受人無限的權(quán)利。再發(fā)行權(quán)的授予需要許可證接受人開放軟件的源代碼,及所有修改。且復(fù)制件、修改版本,都必須以GPL為許可證。

  這些要求就是copyleft,它的基礎(chǔ)就是作品在法律上版權(quán)所有。由于它版權(quán)所有,許可證接受人就無權(quán)進(jìn)行修改和再發(fā)行(除合理使用),除非它有一個copyleft條款。如果某人想行使通常被法律所禁止的權(quán)利,只需同意GPL的條款。相反地,如果某人發(fā)行軟件違反了GPL(比如不開放源代碼),他就有可能被原作者起訴。

  copyleft利用版權(quán)法來達(dá)到與其相反的目的:copyleft給人不可剝奪的權(quán)利,而不是版權(quán)法所規(guī)定的諸多限制。這也是GPL被稱作“被黑的版權(quán)法”的原因。

  許多GPL軟件發(fā)行者都把源代碼與可執(zhí)行程序捆綁起來。另一方式就是以物理介質(zhì)(比如CD)為載體提供源代碼。在實(shí)踐中,許多GPL軟件都是在互聯(lián)網(wǎng)上發(fā)行的,源代碼也有許多可以FTP方式得到。

  copyleft只在程序再發(fā)行時發(fā)生效力。對軟件的修改可以不公開或開放源代碼,只要不發(fā)行。注意copyleft只對軟件有效力,而對軟件的輸出并無效力(除非輸出的是軟件本身)。不過這在GPL版本3中可能會有改動。

  GPL是許可證

  GPL設(shè)計為一種許可證,而不是合同。在英美法系國家,許可證與合同有法律上的明確區(qū)別:合同由合同法保障效力,而GPL作為一種許可證由版權(quán)法保障效力。不過在許多采用歐陸法系的國家并無此種區(qū)別。

  GPL原理簡單:在版權(quán)法下,你不遵守GPL的條款和條件你就沒有相應(yīng)權(quán)利。而作品在沒有GPL的情況下,版權(quán)法作為默認(rèn)條款發(fā)生效力,而不是作品進(jìn)入公有領(lǐng)域。

評論  |   0條評論