GNU GPL--GNU通用公共许可证

版权所有(C)1989,1991 Free Software foundation,Inc.675 Mass Ave,Cambridge,MAO2139,USA 允许每个人复制和发布这一许可证原始文档的副本,但绝对不允许对它进行任何修改。
    序言



    大多数软件许可证决意剥夺你的共享和修改软件的自由。对比之下,GNU通用公共许可证力图保证你的共享和修改自由软件的自由——保证自由软件对所有用户是自由的。GPL适用于大多数自由软件基金会的软件,以及由使用这些软件而承担义务的作者所开发的软件。(自由软件基金会的其他一些软件受GNU库通用许可证的保护)。你也可以将它用到你的程序中。

    当我们谈到自由软件(free software)时,我们指的是自由而不是价格。我们的GNU通用公共许可证决意保证你有发布自由软件的自由(如果你愿意,你可以对此项服务收取一定的费用);保证你能收到源程序或者在你需要时能得到它;保证你能修改软件或将它的一部分用于新的自由软件;而且还保证你知道你能做这些事情。为了保护你的权利,我们需要作出规定:禁止任何人不承认你的权利,或者要求你放弃这些权利。如果你修改了自由软件或者发布了软件的副本,这些规定就转化为你的责任。例如,如果你发布这样一个程序的副本,不管是收费的还是免费的,你必须将你具有的一切权利给予你的接受者;你必须保证他们能收到或得到源程序;并且将这些条款给他们看,使他们知道他们有这样的权利。

    我们采取两项措施来保护你的权利。

    (l)给软件以版权保护。

    (2)给你提供许可证。它给你复制,发布和修改这些软件的法律许可。同样,为了保护每个作者和我们自己,我们需要清楚地让每个人明白,自由软件没有担保 (no warranty)。如果由于其他某个人修改了软件,并继续加以传播。我们需要它的接受者明白:他们所得到的并不是原来的自由软件。由其他人引人的任何问题,不应损害原作者的声誉。

    最后,任何自由软件不断受到软件专利的威胁。我们希望避免这样的风险,自由软件的再发布者以个人名义获得专利许可证。事实上,将软件变为私有。为防止这一点,我们必须明确:任何专利必须以允许每个人自由使用为前提,否则就不准许有专利。
      
    有关复制,发布和修改的条款和条件

      0.此许可证适用于任何包含版权所有者声明的程序和其他作品,版权所有者在声明中明确说明程序和作品可以在GPL条款的约束下发布。下面提到的“程序”指的是任何这样的程序或作品。而“基于程序的作品”指的是程序或者任何受版权法约柬的衍生作品。

      也就是说包含程序或程序的一部分的作品。可以是原封不动的,或经过修改的和/或翻译成其他语言的(程序)。在下文中,翻译包含在修改的条款久每个许可证接受人(license)用你来称呼。

      许可证条款不适用于复制,发布和修改以外的活动。这些活动超出这些条款的范围。运行程序的活动不受条款的限止。仅当程序的输出构成基于程序作品的内容时,这一条款才适用(如果只运行程序就无关)。是否普遍适用取决于程序具体用来做什么。

      1.只要你在每一副本上明显和恰当地出版版权声明和不承担担保的声明,保持此许可证的声明和没有担保的声明完整无损,并和程序一起绘每个其他的程序接受者一份许可证的副本,你就可以用任何媒体复制和发布你收到的原始的程序的源代码。

      你可以为转让副本的实际行动收取一定费用。你也有权选择提供担保以换取一定费用。

      2.你可以修改程序的一个或几个副本或程序的任何部分,以此形成基于程序的作品。只要你同时满足下面的所有条件,你就可以按前面第一款的要求复制和发布这一经过修改的程序或作品。

      a)你必须在修改的文件中附有明确的说明:你修改了这一文件及具体的修改日期。

      b)你必须使你发布或出版的作品(它包含程序的全部或一部分,或包含由程序的全部或部分衍生的作品)允许第三方作为整体按许可证条款免费使用。

      c)如果修改的程序在运行时以交互方式读取命令,你必须使它在开始进入常规的交互使用方式时打印或显示声明:包括适当的版权声明和没有担保的声明(或者你提供担保的声明);用户可以按此许可证条款重新发布程序的说明;并告诉用户如何看到这一许可证的副本。(例外的情况:如果原始程序以交互方式工作,它并不打印这样的声明,你的基于程序的作品也就不用打印声明)。

      这些要求适用于修改了的作品的整体。如果能够确定作品的一部分并非程序的衍生产品,可以合理地认为这部分是独立的,是不同的作品。当你将它作为独立作品发布时,它不受此许可证和它的条款的约束。但是当你将这部分作为基于程序的作品的一部分发布时,作为整体它将受到许可证条款约束。准予其他许可证持有人的使用范围扩大到整个产品。也就是每个部分,不管它是谁写的。

      因此,本条款的意图不在于索取权利;或剥夺全部由你写成的作品的权利。而是履行权利来控制基于程序的集体作品或衍生作品的发布。

      此外,将与程序无关的作品和该程序或基于程序的作品一起放在存贮体或发布媒体的同一卷上,并不导致将其他作品置于此许可证的约束范围之内。

      3.你可以以目标码或可执行形式复制或发布程序(或符合第2款的基于程序的作品),只要你遵守前面的第l,2款,并同时满足下列3条中的1条。

      a)在通常用作软件交换的媒体上,和目标码一起附有机器可读的完整的源码。这些源码的发布应符合上面第1,2款的要求。或者

      b)在通常用作软件交换的媒体上,和目标码一起,附有给第三方提供相应的机器可读的源码的书面报价。有效期不少于3年,费用不超过实际完成源程序发布的实际成本。源码的发布应符合上面的第1,2款的要求。或者

      c)和目标码一起,附有你收到的发布源码的报价信息。(这一条款只适用于非商业性发布,而且你只收到程序的目标码或可执行代码和按b)款要求提供的报价)。

      作品的源码指的是对作品进行修改最优先择取的形式。对可执行的作品讲,完整的源码包括:所有模块的所有源程序,加上有关的接口的定义,加上控制可执行作品的安装和编译的script。作为特殊例外,发布的源码不必包含任何常规发布的供可执行代码在上面运行的操作系统的主要组成部分(如编译程序,内核等)。除非这些组成部分和可执行作品结合在一起。

      如果采用提供对指定地点的访问和复制的方式发布可执行码或目标码,那么,提供对同一地点的访问和复制源码可以算作源码的发布,即使第三方不强求与目标码一起复制源码。

      4.除非你明确按许可证提出的要求去做,否则你不能复制,修改,转发许可证和发布程序。任何试图用其他方式复制,修改,转发许可证和发布程序是无效的。而且将自动结束许可证赋予你的权利。然而,对那些从你那里按许可证条款得到副本和权利的人们,只要他们继续全面履行条款,许可证赋予他们的权利仍然有效。

      5.你没有在许可证上签字,因而你没有必要一定接受这一许可证。然而,没有任何其他东西赋予你修改和发布程序及其衍生作品的权利。如果你不接受许可证,这些行为是法律禁止的。因此,如果你修改或发布程序(或任何基于程序的作品),你就表明你接受这一许可证以及它的所有有关复制,发布和修改程序或基于程序的作品的条款和条件。

      6.每当你重新发布程序(或任何基于程序的作品)时,接受者自动从原始许可证颁发者那里接到受这些条款和条件支配的复制,发布或修改程序的许可证。你不可以对接受者履行这里赋予他们的权利强加其他限制。你也没有强求第三方履行许可证条款的义务。

      7.如果由于法院判决或违反专利的指控或任何其他原因(不限于专利问题)的结果,强加于你的条件(不管是法院判决,协议或其他)和许可证的条件有冲突。他们也不能用许可证条款为你开脱。

      在你不能同时满足本许可证规定的义务及其他相关的义务时,作为结果,你可以根本不发布程序。例如,如果某一专利许可证不允许所有那些直接或间接从你那里接受副本的人们在不付专利费的情况下重新发布程序,唯一能同时满足两方面要求的办法是停止发布程序。

      如果本条款的任何部分在特定的环境下无效或无法实施,就使用条款的其余部分。并将条款作为整体用于其他环境。

      本条款的目的不在于引诱你侵犯专利或其他财产权的要求,或争论这种要求的有效性。本条款的主要目的在于保护自由软件发布系统的完整性。它是通过通用公共许可证的应用来实现的。许多人坚持应用这一系统,已经为通过这一系统发布大量自由软件作出慷慨的供献。作者/捐献者有权决定他/她是否通过任何其他系统发布软件。许可证待有人不能强制这种选择。

      本节的目的在于明确说明许可证其余部分可能产生的结果。

      8.如果由于专利或者由于有版权的接口问题使程序在某些国家的发布和使用受到限止,将此程序置于许可证约束下的原始版权拥有者可以增加限止发布地区的条款,将这些国家明确排除在外。并在这些国家以外的地区发布程序。在这种情况下,许可证包含的限止条款和许可证正文一样有效。

      9.自由软件基金会可能随时出版通用公共许可证的修改版或新版。新版和当前的版本在原则上保持一致,但在提到新问题时或有关事项时,在细节上可能出现差别。

      每一版本都有不同的版本号。如果程序指定适用于它的许可证版本号以及“任何更新的版本”。你有权选择遵循指定的版本或自由软件基金会以后出版的新版本,如果程序未指定许可证版本,你可选择自由软件基金会已经出版的任何版本。

      10.如果你愿意将程序的一部分结合到其他自由程序中,而它们的发布条件不同。写信给作者,要求准予使用。如果是自由软件基金会加以版权保护的软件,写信给自由软件基金会。我们有时会作为例外的情况处理。我们的决定受两个主要目标的指导。这两个主要目标是:我们的自由软件的衍生作品继续保持自由状态。以及从整体上促进软件的共享和重复利用。

      没有担保

      l1.由于程序准予免费使用,在适用法准许的范围内,对程序没有担保。除非另有书面说明,版权所有者和/或其他提供程序的人们“一样” 不提供任何类型的担保。不论是明确的,还是隐含的。包括但不限于隐含的适销和适合特定用途的保证。全部的风险,如程序的质量和性能问题都由你来承担。如果程序出现缺陷,你承担所有必要的服务,修复和改正的费用。

      12.除非适用法或书面协议的要求,在任何情况下,任何版权所有者或任何按许可证条款修改和发布程序的人们都不对你的损失负有任何责任。包括由于使用或不能使用程序引起的任何一般的,特殊的,偶然发生的或重大的损失(包括但不限于数据的损失,或者数据变得不精确,或者你或第三方的持续的损失,或者程序不能和其他程序协调运行等)。即使版权所有者和其他人提到这种损失的可能性也不例外。

      
    最后的条款和条件

      如何将这些条款用到你的新程序

      如果你开发了新程序,而且你需要它得到公众最大限度的利用。

      要做到这一点的最好办法是将它变为自由软件。使得每个人都能在遵守条款的基础上对它进行修改和重新发布。为了做到这一点,绘程序附上下列声明。最安全的方式是将它放在每个源程序的开头,以便最有效地传递拒绝担保的信息。每个文件至少应有“版权所有”行以及在什么地方能看到声明全文的说明。

      <用一行空间给出程序的名称和它用来做什么的简单说明>

      版权所有(C)19xx(<作者姓名>

      这一程序是自由软件,你可以遵照自由软件基金会出版的GNU通用公共许可证条款来修改和重新发布这一程序。或者用许可证的第二版,或者 (根据你的选择)用任何更新的版本。

      发布这一程序的目的是希望它有用,但没有任何担保。甚至没有适合特定目的的隐含的担保。更详细的情况请参阅GNU通用公共许可证。

      你应该已经和程序一起收到一份GNU通用公共许可证的副本。

      如果还没有,写信给:

      The Free Software Foundation,Inc,,675 Mass Ave,Cambridge, MAO2139,USA还应加上如何和你保持联系的信息。

      如果程序以交互方式进行工作,当它开始进人交互方式工作时,使它输出类似下面的简短声明ll

    Gnomovision第69版,版权所有(C)19XX,作者姓名,

    Gnomovision绝对没有担保。要知道详细情况,请输人'show w'。

    这是自由软件,欢迎你遵守一定的条件重新发布它,要知道详细情况,请输人'Show c'。

    假设的命令‘shovr w’和‘show c’应显示通用公共许可证的相应条款。当然,你使用的命令名称可以不同于‘show w’和‘show c,。根据你的程序的具体情况,也可以用菜单或鼠标选项来显示这些条款。

    如果需要,你应该取得你的上司(如果你是程序员)或你的学校签署放弃程序版权的声明。下面只是一个例子,你应该改变相应的名称:

    Ynyodyne公司以此方式放弃James Harker

    所写的Gnomovision程序的全部版权利益。

    <Ty coon签名>,1989.4.1

    Ty coon付总裁

    这一许可证不允许你将程序并人专用程序。如果你的程序是一个子程序库。你可能会认为用库的方式和专用应用程序连接更有用。如果这是你想做的事,使用GNU库通用公共许可证代替本许可证。 

时间: 2024-10-27 19:17:54

GNU GPL--GNU通用公共许可证的相关文章

GNU General Public License,GNU GPL或GPL

GNU General Public License,GNU GPL或GPL -&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 通用公共许可协议 简称GNU GPL或GPL,是一个广泛被使用的自由软件许可证条款,最初由理查德·斯托曼为GNU计划撰写.GPL给予了电脑程序自由软件的定义,并且使用Copyleft机制来确保程序的自由被完善的保留,即要求GPL程序的演绎作品也要在GPL之下.GPL是自由软件和开源软件中

GNU通用公共授权(GNU General Public License)中英文版全文

中文版(原文:http://bergwolf.googlepages.com/gplv3_zh ) GNU 通用公共授权 第三版 2007 年6 月29 日 版权所有(C )2007 Free Software Foundation, Inc. (http://fsf.org) 允许所有人复制和发布本授权文件的完整版本 但不允许对它进行任何修改 导言 GNU 通用公共授权是一份针对软件和其他种类作品的自由的.公共的授权文件. 大多数软件授权申明被设计为剥夺您共享和修改软件的自由.相反地,GNU

法官裁决 GNU GPL 是有约束力的合同

办公软件 Hancom Office 的韩国开发商从 2013 年起在其字处理软件中整合了开源的 PDF 解释器 Ghostscript.Ghostscript 采用了两种许可证,GNU GPL 以及一个付费的商业授权许可证.如果 Hancom 不想付费,那么它将需要开源其软件. Hancom 的决定是什么也不做,既不开源也不付费.2016 年,Ghostscript 的开发者 Artifex 向加州北区法院起诉了 Hancom,指控其滥用 GNU GPL 和侵犯了自己的版权, Artifex

ProfDepanne 3.0发布 GNU GPL发布的自由软件

ProfDepanne是一个由GNU GPL发布的http://www.aliyun.com/zixun/aggregation/29607.html">自由软件,用于帮助计算机用户解决问题的程序.它提供了有关计算机系统和它使用的信息,可以帮助用户迁移信息技术到一个免费的操作系统,如GNU / Linux. ProfDepanne 3.0此版本采用Qt/C++++重写,增加了一个简单的BOT,提高了一些教程,重组选项卡和菜单,提高GNU / Linux的信息系统,支持输出PDF格式的报告,

Microsoft Permissive License (Ms-PL) Microsoft 公共许可证

对随附软件的使用受本许可证的制约.使用该软件即表示您接受本许可证.如果您不接受本许可证,请不要使用该软件. 1.定义 术语"复制"."衍生作品"和"分发"与美国版权法中的定义相同. "稿件"是指原始软件或对该软件进行的任何添加或更改. "撰稿人"是指依据此许可证分发其稿件的任何人. "许可专利"是指撰稿人在其稿件上直接注明的专利主张. 2.权利的授予 (A)版权授予 - 根据本许可证的条

wkhtmltopdf:一个 Linux 中将网页转成 PDF 的智能工具

wkhtmltopdf 是一个开源.简单而有效的命令行 shell 程序,它可以将任何 HTML (网页)转换为 PDF 文档或图像(jpg.png 等). wkhtmltopdf 是用 C++ 编写的,并在 GNU/GPL (通用公共许可证)下发布.它使用 WebKit 渲染引擎将 HTML 页面转换为 PDF 文档且不会丢失页面的质量.这是一个用于实时创建和存储网页快照的非常有用且可信赖的解决方案. wkhtmltopdf 的功能 开源并且跨平台. 使用 WebKit 引擎将任意 HTML

《Linux 高级程序设计(第三版)》——第1章  Linux下C语言开发环境 1.1 Linux操作系统简介

第1章 Linux下C语言开发环境 Linux应用程序开发平台有别于Windows应用程序开发平台,因此在介绍具体编程内容之前,本书第1.2章主要介绍Linux操作系统下C语言程序的开发环境和开发工具. 本章主要介绍Linux下C语言开发环境,包括一些基本概念和基本编程环境.本章第1节主要对Linux操作系统及其相关术语进行了简要介绍. 本章第2节主要介绍Linux操作系统下编程基本概念以及如何获得Linux下的帮助文件,包括Linux操作系统下C语言库文件标准以及系统调用的基本概念. 本章第3

分享10个程序员常用的的代码文本编辑器_相关技巧

通常操作系统和软件开发包中都包含文本编辑器,可以用来编辑配置文件,文档文件和源代码. 下面是笔者总结的10个最好的免费代码文本编辑器: 1.NOTEPAD++ NOTEPAD++是一款免费又优秀的文本编辑器,支持在MS Windows环境下运行的多种编程语言.NOTEPAD++支持超过50种编程.脚本和标记语言的语法高亮显示和代码折叠,能让用户迅速减小或扩大代码段以便查阅整个文档.用户也可以手动设置当前语言,覆盖默认语言.该程序还支持自动完成某些编程语言的API子集. 官方网站:http://n

开源是中国版创客运动的技术引擎

开源(Open Source)是1998年2月3日提出的概念,是开放源代码,并遵循开源许可证,可进行自由传播的软件.所谓自由传播指可以自由发布.自由复制.自由修改.自由使用.不同的开源许可证规定不同开源软件具有不同的自由度.自由软件(Free Software)具有最大的自由度.开源软件是有商业模式的,而自由软件没有商业模式. 自由软件创始人斯多尔曼为对抗私有软件或专有软件潮流,写出了<GNU宣言>,开启GNU计划,通过开发不受约束的操作系统.应用程序及编程工具,来推广自由软件模式.同时GNU