本文撰写于一九九九年二月。
本文由王立翻译 1999.11.9
[ Russian ]
GNU工程为库提供了两个基本的许可证。一个是GNU库通用公共许可证(Library GPL); 另一个是普通的GNU通用公共许可证(GPL)。对许可证的选择将带来很大的不同:使用 库通用公共许可证允许把库应用在私有程序中;使用普通的通用公共许可证则使库只能 被自由的程序所使用。
对于特定的库来说,那个许可证更好是个战略问题,并且它与实际情况的细节有关。 现在,大部分GNU库采用了库通用公共许可证,并且这意味着我们只使用了这两种策略 中的一种,而忽略了另一种。所以我们现在正在寻找更多按照普通的通用公共许可证 发行的库。
私有软件开发者在金钱方面占有优势;自由软件的开发者需要彼此之前的帮助。对 库使用普通的通用公共许可证使得自由软件开发者获得了相对于私有软件开发者的优势: 他们可以使用库,而私有软件开发者则不能。
使用普通的通用公共许可证并不对所有的库都有利。在有些情况下,有理由相信使用 库通用公共许可证会更好一些。最常见的情况是:私有软件可以通过使用其它库而容易地 完成自由的库所提供的功能。在这种情况下,库并没有给自由软件带来特别的好处,所以 使用库通用公共许可证比较好。
这就是为什么我们把库通用公共许可证用于GNU C库。毕竟还有许多其它的C库;为我们 使用GPL将使得私有软件的开发者使用其它的库--对它们来说没问题,只对我们有问题。
但是,如果库提供了相当特别的能力,例如GNU Readline,那情况就不同了。库Readline 为交互式程序实现了输入编辑和历史功能,并且这是一个在其它地方难以找到的功能。 按照通用公共许可证发行它并且把对它的应用限制在自由软件中将给我们的社团以有效 的推进。至少有一个因为需要使用Readline的应用程序在今天成为了自由软件。
如果我们聚集了许多功能强大的、按照通用公共许可证法发行的、没有相应的库供私有 软件使用的自由库,它们将为创建新的自由软件提供用途广泛的模块。这将成为进一步开发 自由软件的重要好处,同时一些工程将决定使其软件成为自由的以使用这些库。大学里的项目 可以容易地受到影响;现在,公司也开始考虑使软件成为自由的,即使一些商业工程也受到 了这种方式的影响。
试图在重要的先进技术上避免自由竞争的私有软件开发者,将尽力劝说软件的作者不要 把库贡献给通用公共许可证。例如,他们可能提倡利己主义,如果我们让他们在私有软件产品 中使用代码,就承诺“这个库会有更多的用户”。推广是具有诱惑力的,拓宽一个自由软件 社团更加需要的库的应用,对于库的开发者来说是很容易接受的。
但我们不应该听取这些诱惑,因为如果我们团结一致,我们就可以获得更多的东西。我们 自由软件开发者应该支持另一个许可证。通过发行仅仅能够在自由软件中使用的库,我们可以 互相帮助以使得自由软件包胜过相应的私有软件。这个自由软件运动将变得更加广泛,因为 自由软件作为一个整体将在竞争中做得更好。
因为名成“库通用公共许可证”为这个问题传递了错误的观点,我们打算把它的名字改 成“次要的通用公共许可证”(Lesser GPL)。实际上这个名字可能在某些时候发生改变, 但你不需要等待--你现在可以按照通用公共许可证发向你的库。
FSF & GNU inquiries & questions to gnu@gnu.org. Other ways to contact the FSF.
Comments on these web pages to webmasters@www.gnu.org, send other questions to gnu@gnu.org.
Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
只要保留了本声明,本文就可以在任何媒体上被完整地复制和发布。
Updated: 6 Nov 1999 jonas