GNU Lesser通用公共许可证,2.1版

跳到许可证文本

此GNU Lesser通用公共许可证视为GNU的继承者图书馆通用公共许可证。为了解释为什么会发生这种变化必要时,请阅读为什么你不应该使用下一个库的较低GPL文章。

目录


GNU LESSER通用公共许可证

2.1版,1999年2月

版权所有(C)1991,1999 Free Software Foundation,Inc。美国马萨诸塞州波士顿市富兰克林街51号5楼,邮编:02110-1301每个人都可以复制和分发原稿但不允许更改它。[这是Lesser GPL的第一个发布版本。它也很重要作为GNU库公共许可证版本2的继承者,因此版本号2.1.]

序言

大多数软件的许可证设计用于带走您的分享和改变它的自由。相比之下,GNU公众许可证旨在保证您共享和更改的自由自由软件——确保软件对所有用户都是免费的。

本许可证,即较小通用公共许可证,适用于特别指定的软件包(通常是库)自由软件基金会和其他决定使用它的作者也可以使用,但我们建议您首先仔细考虑是否此许可证或普通通用公共许可证更好根据以下解释,在任何特定情况下使用的策略。

当我们谈到自由软件时,我们指的是使用自由,不是价格。我们的通用公共许可证旨在确保您可以自由分发免费软件的副本(并收费如果您愿意,可以使用此服务);收到源代码或可以获得如果你想要它;您可以更改软件并使用在新的免费程序中;并且你被告知你可以做到这些东西。

为了保护你的权利,我们需要做出限制分销商拒绝您这些权利或要求您放弃这些权利权利。这些限制转化为某些责任如果您分发库的副本或对其进行修改。

例如,如果您分发库的副本,无论是免费的或者收取费用,你必须给予接收人我们给予的所有权利你。您必须确保他们也能接收或获得源代码代码。如果将其他代码链接到库,则必须提供向收件人填写目标文件,以便他们可以重新链接对库进行更改并重新编译后使用库你必须向他们展示这些条款,让他们知道自己的权利。

我们通过两步来保护您的权利:(1)我们对库,以及(2)我们为您提供此许可证,使您可以合法使用复制、分发和/或修改库的权限。

为了保护每个分销商,我们要明确免费图书馆没有保修。此外,如果库是由其他人修改并传递,收件人应该知道他们所拥有的不是原始版本,所以原始版本作者的声誉不会受到可能出现的问题的影响由他人介绍。

最后,软件专利对任何免费程序。我们希望确保公司不能通过获取专利持有人的限制性许可。因此,我们坚持为某个版本的库获得的任何专利许可必须符合本许可证中规定的完全使用自由。

大多数GNU软件,包括一些库,都包含在普通GNU通用公共许可证。此许可证,GNU Lesser通用公共许可,适用于某些指定的库,以及与普通公共许可证有很大不同。我们使用此许可证用于某些库,以允许链接这些库库转换为非免费程序。

当程序与库链接时,无论是静态链接还是使用共享库,从法律上讲,两者的结合是组合工作,源于原始库。普通人因此,通用公共许可证仅在整个组合符合其自由标准。小将军公共许可证允许将其他代码与图书馆。

我们将此许可称为“较低”通用公共许可,因为它比普通将军保护用户自由更少公共许可。它还为其他自由软件开发人员提供了Less相对于竞争性非免费程序的优势。这些缺点是我们对许多人使用普通通用公共许可证的原因库。然而,较宽松的许可证在某些方面提供了优势特殊情况。

例如,在极少数情况下,可能需要鼓励尽可能广泛地使用某个库,使其成为实际标准。要实现这一点,非自由程序必须允许使用库。更常见的情况是免费图书馆与广泛使用的非免费图书馆做同样的工作。在这个在这种情况下,将免费库限制为免费几乎没有什么好处仅限于软件,因此我们使用较低通用公共许可证。

在其他情况下,允许使用非免费的特定库程序使更多的人能够使用大量自由软件。例如,在中使用GNU C库的权限非免费程序使更多的人能够使用整个GNU操作系统及其变体GNU/Linux操作系统。

虽然较低通用公共许可证对用户的自由,它确实确保了程序的用户与图书馆有联系的人有经营的自由和资金该程序使用库的修改版本。

复制、分发和随后进行修改。密切关注“基于库工作”和“使用库的工作”。这个前者包含从库派生的代码,而后者必须与库结合以运行。

复制、分发和修改的条款和条件

0本许可协议适用于任何软件库或其他包含版权持有人发布的通知或其他授权方表示可以根据此较低的通用公共许可证(也称为“本许可证”)。每个被许可人都被称为“您”。

“库”是指软件功能和/或数据的集合为方便与应用程序链接而准备(使用其中一些函数和数据)来形成可执行文件。

下面的“库”是指任何此类软件库或作品已根据这些条款分发。A“基于图书馆”是指图书馆或根据版权法:也就是说,包含图书馆或部分内容,逐字逐句或经修改和/或翻译直接翻译成另一种语言。(以下翻译为包括但不限于“修改”一词。)

作品的“源代码”是指作品的首选形式对其进行修改。对于库,完整的源代码意味着它包含的所有模块的所有源代码,以及任何相关的接口定义文件,以及用于控制编译的脚本和库的安装。

复制、分发和修改以外的活动本许可证涵盖的范围;它们超出了其范围。行为使用库运行程序不受限制只有当其内容构成基于作品的内容时,才涵盖此类程序在库上(独立于库在工具中的使用写它)。这是否属实取决于图书馆的工作以及使用库的程序的功能。

1您可以复制和分发图书馆在收到源代码时,在任何介质中完成它,前提是您可以在每个副本上醒目且适当地发布适当的版权通知和免责声明;保持完好所有涉及本许可证的通知,以及担保;并将本许可证的副本连同图书馆。

您可以对转让副本的实际行为收取费用,您可以选择提供保修保护,以换取费用。

2您可以修改库或任何部分的副本从而形成以图书馆为基础的作品,并复制和根据第1节的条款分发此类修改或工作前提是您也满足所有这些条件:

  • a)修改后的作品本身必须是软件库。
  • b)您必须使修改后的文件带有显著的通知说明您更改了文件和任何更改的日期。
  • c)你必须使整个作品获得许可根据本许可条款向所有第三方收取费用。
  • d)如果修改后的库中的设施引用函数或使用工具,而不是作为工具时传递的参数则您必须真诚努力确保,如果应用程序不提供此类功能,或表中,该设施仍在运行,并执行任何部分它的目的仍然有意义。

    (例如,库中用于计算平方根的函数有一个完全明确定义的目的,独立于应用程序。因此,第2d小节要求应用程序提供的函数或此函数使用的表必须可选:如果应用程序没有提供,则方块根函数仍必须计算平方根。)

这些要求适用于整个修改后的工程。如果可识别该作品的部分不是从库中派生的,可以是合理考虑独立独立的工程,然后当您将它们作为单独的作品分发。但是当你分发相同的部分作为整体的一部分,它是基于图书馆、整体分配必须符合本许可证的条款,其其他被许可方的权限扩展到整个范围,因此每一部分,无论是谁写的。

因此,本节的目的不是要求权利或对您的完全由您编写的工作权利;相反,目的是锻炼控制衍生作品或集体作品发行的权利基于图书馆。

此外,仅仅是将不基于图书馆的其他作品与存储卷上的库(或基于库的作品)或发行媒体未将其他工作纳入本许可证。

三。您可以选择应用普通GNU普通公众的条款对库的给定副本授予许可证而不是本许可证。待办事项因此,您必须更改所有涉及本许可证的通知它们指的是普通GNU通用公共许可证,版本2,而不是本许可证。(如果是比版本2更新的出现普通GNU通用公共许可证,然后您可以指定如果您愿意,可以改为该版本。)不要在中进行任何其他更改这些通知。

在给定副本中进行此更改后,对于该副本,因此普通GNU通用公共许可证适用于所有随后的副本和由该副本制作的衍生作品。

当您希望复制的部分代码时,此选项很有用将库转换为非库程序。

4您可以复制和分发库(或部分或根据第2)节以目标代码或可执行形式派生的根据上述第1节和第2节的条款,前提是您它具有完整的相应机器可读源代码,其中必须根据上述第1节和第2节的条款在通常用于软件交换的介质。

如果目标代码的分发是通过提供副本访问权限进行的从指定位置复制来自同一位置的源代码满足以下要求分发源代码,即使第三方没有被迫复制源代码和目标代码。

5不包含库,但旨在通过编译或与之相关联的作品称为“使用图书馆的作品”。这样一个单独而言,该作品不是图书馆的衍生作品,并且因此不属于本许可证的范围。

然而,将“使用库的作品”与库链接创建库派生的可执行文件(因为它包含库的一部分),而不是“使用库”。因此,可执行文件受本许可证保护。第6节规定了此类可执行文件的分发条款。

当“使用库的作品”使用头文件中的材料时这是库的一部分,工作的目标代码可能是库的派生工作,即使源代码不是。如果工作可以如果作品本身是一个库,则链接不到库。这个法律并没有对这一点做出准确定义。

如果这样的目标文件只使用数字参数,则数据结构布局和访问器,以及小宏和小内联函数(长度不超过十行),然后使用对象文件是不受限制的,无论它在法律上是否是派生文件工作。(包含此目标代码和图书馆仍属于第6节。)

否则,如果该作品是库的衍生作品,您可以根据第6节的条款分发工作的目标代码。包含该工作的任何可执行文件也属于第6节,无论它们是否与库本身直接链接。

6作为上述章节的例外,您还可以将或将“使用库的作品”与库链接以生成包含部分库的工作,并分发该工作根据您选择的条款,前提是条款允许修改工作供客户自用和反转调试此类修改的工程。

你必须在每一份作品的副本中突出说明图书馆在其中使用,图书馆及其使用由本许可证。您必须提供本许可证的副本。如果工作在执行显示版权声明期间,必须包括其中包括图书馆版权声明以及参考将用户定向到本许可证的副本。另外,你必须做一个其中包括:

  • a)完成工作库的相应机器可读源代码包括工作中使用的任何更改(必须是根据上述第1节和第2节分发);如果工作是与库链接的可执行文件机器可读的“使用库的作品”,作为目标代码和/或源代码,以便用户可以修改库和然后重新链接以生成包含修改了库。(据了解,更改库中定义文件的内容不一定能够重新编译应用程序以使用修改后的定义。)
  • b)使用合适的共享库机制用于与图书馆链接。合适的机制是(1) 在运行时使用已存在于用户的计算机系统,而不是将库函数复制到可执行文件,和(2)将使用修改后的库的版本,如果用户安装了一个,只要修改后的版本与工作是用做的。
  • c)在工作中附上书面提议,有效期至少为三年,为同一用户提供上述第6a小节中规定的材料,不再收费而不是执行此分发的成本。
  • d)如果工作分配由提供从指定位置获取副本的权限,提供同等权限从同一网站复制上述指定材料的权限地点。
  • e)验证用户是否已收到这些材料的副本或您已经发送给该用户的副本一份副本。

对于可执行文件,“使用图书馆”必须包括从中复制可执行文件。但是,作为一个特殊的例外,要分发的材料不需要包括正态分布(以源代码或二进制形式)操作系统的组件(编译器、内核等)可执行文件运行的,除非该组件本身附带可执行文件。

这一要求可能与许可证相矛盾其他专有库的限制随操作系统提供。这样的矛盾意味着你不能在可执行文件中同时使用它们和库分发。

7你可以放置图书馆设施基于单个库中并排的库以及本许可证未涵盖的其他图书馆设施,并分发这样一个联合图书馆,前提是基于图书馆和其他图书馆设施的工作是除非另有许可,但前提是您要做以下两件事:

  • a)随附组合库一份基于库的相同工作,与任何其他图书馆设施。必须根据以下条款分发上述章节。
  • b)用组合的它的一部分是基于库,并解释在何处可以找到附带的未组合项同一作品的形式。

8您不得复制、修改、分许可、链接,或分发图书馆,除非本协议明确规定许可证。以其他方式复制、修改、再授权、链接的任何尝试使用或分发图书馆是无效的,将自动终止您在本许可证下的权利。然而根据本许可从您处收到的副本或权利只要双方保持全额,其许可证就会终止顺从。

9您不需要接受本许可证,因为您没有已签名。但是,没有其他内容授予您修改或分发图书馆或其衍生作品。这些操作是如果您不接受本许可证,将被法律禁止。因此,通过修改或分发库(或基于库),您表示接受本许可证,并且复制、分发或修改的所有条款和条件图书馆或基于图书馆的作品。

10每次重新发布库(或基于库),收件人自动从原始许可方复制、分发、链接或修改库遵守这些条款和条件。你不能再强加对接收人行使本协议授予的权利的限制。您不负责强制第三方遵守本许可证。

11如果,由于法院判决或专利指控侵权或其他原因(不限于专利问题),对您施加的条件(无论是法院命令、协议还是否则)违反本许可证的条件请原谅您违反本许可证的条件。如果你不能分配以同时满足您在本协议项下的义务许可和任何其他相关义务,因此您可能根本不会分发库。例如,如果一项专利该许可证不允许图书馆的免版税再分配所有直接或间接通过您接收副本的人,那么您满足它和本许可证的唯一方法是完全避免分发图书馆。

如果根据任何特殊情况下,本节的其余部分将适用,而本节作为一个整体旨在适用于其他情况。

本节的目的不是诱使您侵犯专利或其他产权主张或对任何此类索赔;本节的唯一目的是保护自由软件分发系统的完整性由公共许可实践实施。许多人已经为广泛的分布式软件做出慷慨贡献依靠该系统的一致应用制度;由作者/捐赠者决定他或她是否愿意通过任何其他系统分发软件,而被许可方不能强加这种选择。

本节旨在彻底阐明是本许可证其余部分的结果。

12如果图书馆的分发和/或使用受到限制某些国家通过专利或受版权保护的接口将库置于本许可之下的原始版权所有者可以添加明确的地域分配限制,不包括这些国家,因此,只允许在不这样做的国家内或国家之间进行分配排除在外。在这种情况下,本许可证包含如下限制写在本许可证正文中。

13自由软件基金会可能发布修订版和/或新版本不时发布的较低通用公共许可证版本。这些新版本在精神上与当前版本相似,但在解决新问题或关注点时,细节可能会有所不同。

每个版本都有一个不同的版本号。如果图书馆指定适用于本许可证的版本号,以及“任何更高版本”,您可以选择遵循条款和该版本或由发布的任何更高版本的条件自由软件基金会。如果库没有指定许可证版本号,您可以选择发布的任何版本自由软件基金会。

14如果您希望将库的某些部分合并到其他免费的其分发条件与这些不兼容的程序,写信给作者请求许可。对于以下软件:版权归自由软件基金会所有,写信给自由软件基础;我们有时会对此做出例外。我们的决定将以保持自由状态的两个目标为指导我们自由软件的所有衍生产品以及促进共享以及软件的通用重用。

无担保

15由于该库是免费许可的,因此没有在适用法律允许的范围内对图书馆进行担保。除非版权持有人和/或其他方“按原样”提供库,无任何保证种类,无论是明示的还是暗示的,包括但不限于适销性和特定适用性的默示保证目的。与质量和性能相关的全部风险图书馆与你同在。你认为图书馆是否存在缺陷所有必要的维修、修理或纠正费用。

16在任何情况下,除非适用法律要求或双方同意任何版权持有人或可能修改的任何其他方和/或按照上述许可重新分发图书馆,对您负责损害赔偿,包括任何一般、特殊、偶然或因使用或无法使用图书馆(包括但不限于数据丢失或数据存在您或第三方或库无法与任何其他软件一起运行),即使该持有人或其他方已被告知该可能性损害赔偿。

条款和条件结束

如何将这些术语应用于新库

如果你开发了一个新的库,并且你希望它是最好的我们建议让它成为免费软件每个人都可以重新分配和改变。你可以在允许的情况下这样做根据这些条款重新分配(或者,根据普通公共许可证)。

要应用这些术语,请在库中附上以下通知。它是最安全地将它们附加到每个源文件的开头传达保修除外条款;并且每个文件应至少具有“版权”行和指向完整通知所在位置的指针。

一行给出库的名称和它的功能。版权(C)  作者姓名这个库是自由软件;你可以重新分配它和/或根据GNU Lesser General Public的条款修改自由软件基金会发布的许可证;任何一个许可证的2.1版或(根据您的选择)任何更高版本。这个图书馆是为了有用而发行的,但无任何保证;甚至没有适销性或特定用途的适用性。查看GNULesser General Public License了解更多详细信息。你应该收到GNU Lesser General Public的副本此库的许可证;如果没有,请写信给自由软件美国马萨诸塞州波士顿富兰克林街51号五楼基金会02110-1301

还可以添加有关如何通过电子邮件和纸质邮件与您联系的信息。

你还应该找你的雇主(如果你是程序员)或你的学校(如果有)为图书馆签署“版权免责声明”,如果必要的。这是一个样品;更改名称:

Yoyodyne,Inc.特此放弃编写的库“Frob”(用于调整旋钮的库)詹姆斯·兰登·哈克(James Random Hacker)。Ty Coon签名1990年4月1日副总裁Ty Coon

这就是一切!