[转载]让人既爱又头痛的 GNU/GPL

转载自: 自由软件铸造场


GNU Genral Public License(以下简称GNU/GPL)是第一份自由软件授权条款,也是目前最广为被使用的授权条款之一。自由软件之父 Richard M. Stallman(以下称 Stallman)为了替他的软件开发计画- GNU 计画寻找适当的授权方式,在 1989 年草拟出 GNU/GPL 第一版。它的整个架构与理念源自于 Stallman 所宣示的软件使用者四大自由(注一):

  • 使用的自由:可以不受任何限制使用该软件。
  • 研究的自由:可以研究该软件的运作方式,并使其符合个人需求。
  • 散布的自由:可以自由地复制该软件并散布给他人。
  • 改良的自由:可以自行改良该软件并散布改良后的版本,以嘉惠众人。


为了实现上述研究自由与改良自由,使用者必须可以取得软件原始码。而任何一个符合上述四大自由的软件就可以被称为自由软件。

为了落实四大自由,Stallman 设计了一套不同于当时既有的著作权授权模式-copyleft。这套制度最大的特色有二:

  • 使用者可以免授权金地执行、重制与散布该程式,并且同样免授权金地取得程式原始码;
  • 任何基于程式原始版本所开发出来的修正版本(modificaiton)仍然必须使用相同的授权条款﹔

透过这样一套机制,不仅仅最初的原始程式版本是免授权金、开放原始码,就连之后所产生出来的修改版本也一样。所需要注意的是,这一切的基础是奠基在著作权制度之上,所以自由软件仍然是有著作权的软件。

Copyleft 制度落实为具有授权条款文字就成为了 GNU/GPL。它的主要内容包括:

  • 使用者在散布程式重制物的时候(例如:烧成光盘给他人),必须附上原始码。使用者也可以用目的码(object code)的形式散布程式,但是必须让收到目的码的人知道如何取得原始码。
  • 使用者在散布程式时,仍必须适用 GNU/GPL,无论所散布的是原始版本或是修改版本。
  • 不收取费用。除了以不收取授权金的方式让使用者自由执行、重制、修改与散布程式之外,原则上 GNU/GPL 软件也不收取任何费用,不过使用者可以在散布程式重制物时,为了支付重制或散布的成本,又或者是为了自行提供担保而收取费用。
  • 不附随担保(warranty)。因为不收取任何费用,所以 GNU/GPL 原则上不对使用者提供任何担保,不过如上所述,使用者可以自行提供担保。

GNU/GPL 因为基于 copyleft 所发展出来,再加上条款当中规定,对于就算是仅仅撷取一小段原始码来使用,因此而开发出来的程式也必须要透过 GNU/GPL 来授权,所以有人称 GNU/GPL 像是病毒一般(viral license),会将其他的程式原始码也感染成为开放状态。

这种病毒的感染特性,虽然维持了 Stallman 对于自由软件自由开放的理念,却剥夺了一些使用者对于软件授权条款内容的选择权利,所以 GNU/GPL 是集毁誉于一身的授权条款。

这样的特性对于认同自由软件理念的程式开发者以及单纯的程式使用者来说,是相当受到欢迎的,但是对于那些想要使用 GNU/GPL 程式原始码,却不愿意将所开发程式原始码公开出来的人来说,却是相当头痛的,因为他们必须割爱去另外寻找合适的替代程式。此外,还有一些人使用了GNU/GPL 程式原始码,却不清楚其中的规定,之后才知道必须开放原始码,却碍于一些理由无法将原始码公开,这种情况在承接政府计画开发软件时,就有可能发生,因为依据相关规定,接受政府经费补助所开发出来的软件,原则上必须在我国境内使用,虽然有例外规定可依循,但是碍于既有行政作业程序的僵化与繁复,依据例外规定并非易事。

GNU/GPL 目前最新的版本为第二版,其中当然有许多适用上的问题,因此由 Stallman 所创办的自由软件基金会(注二)正在着手草拟第三版,期待修改出来的版本更为完善。不过上述 GNU/GPL 令人既爱又头痛的特性,应该还是会继续被保留,因为就是这些特性使得自由软件得以广泛地流通,并且受到越来越多人的认同与支持。

注一:有关GNU计画的缘起与GPL产生背景请参见: http://www.gnu.org/
注二:自由软件基金会(Free Software Foundation, FSF): http://www.fsf.org/

相关网页

  1. No comments yet.

  1. No trackbacks yet.

return top

%d 位部落客按了赞: