LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 990|回复: 3

GNU库通用公共许可证

[复制链接]
发表于 2002-8-12 20:04:11 | 显示全部楼层 |阅读模式
前言
   大多数软件许可证的目的是限制你共享和修改软件的自由。相反,GNU通用公共许可证
则旨在保护你共享和修改软件的自由——即保证软件对所有用户都是自由的。通用公共许可
证(GPL)适用于大多数自由软件基金会的软件,以及由使用这些软件而承担义务的作者所
开发的软件。(有些自由软件基金会的软件受到GNU库通用公共许可证的保护。)你也可以将
它用到你的程序中。
     当我们谈到自由软件时,我们所指的是自由而不是价格。我们的通用公共许可证的目的
是保证你有分发自由软件副本的自由(如果愿意的话,你可以对这个服务收费);保证你能
得到源程序代码或者在你需要的时候能得到它,保证你能够修改软件或者将其用到新的自由
软件中,保证你知道你能做这些事情。
    为保护你的权利,我们规定禁止任何人不承认你的权利或者要求你放弃这些权利。如果
你分发了软件的副本或者修改了软件,这些规定就转化为你的责任。
    比如说,你分发了这样一个程序的副本,不管是收费的还是免费的,你必须将你具有的
一切权利给予这些接受者,必须保证他们收到或能得到源程序,而且必须让他们知道自己所
拥有的权利。
    我们采取两项措施来保护你的权利:1)给软件以版权保护,2)给你提供许可证。它给你
复制、分发和修改软件提供法律许可。
    另外,为了保护每个作者和我们自己,我们需要清楚的让每个人明白,自由软件不承担
担保。如果由于其他人修改了软件并继续传播,我们需要它的接受者明白:他们所得到的并
不是原来的自由软件。由其他人引入的任何问题,不应损害原作者的声誉。
     最后,任何自由软件经常受到软件专利的威胁。我们希望避免这样一种风险:自由软件
的再发布者以个人名义获得专利许可证,从而将软件变为私有。为防止这一点,我们必须明
确:任何专利必须以允许每个人自由使用为前提,否则就不准拥有专利。
   下面是有关复制、发布和修改自由软件的确切条款和条件。
                    关于复制、分发和修改的条款和条件
    这个许可证适用于任何包含版权所有者声明的程序和其他作品,版权所有者在声明中明
确说明程序和作品可以在GPL条款的约束下发布。下面提到的“程序”指的是任何这样的程
序或作品。“基于程序的作品”指的是程序或者任何受版权约束的衍生作品。衍生作品是指包
含程序或程序一部分的作品,其包含形式可以是原封不动的,也可以是经过修改的/翻译成其
他语言的。(下文中,翻译包含在没有附加限制的“修改”条款中。)每个领到许可证的人将
用“你”来称呼。
     许可证条款不适用复制、发布和修改以外的活动,他们超过了许可证条款的范围。运行
程序的活动不受条款的限制。仅当程序的输出构成基于程序作品的内容时,这一条款才适用
(如果只运行程序就无关)。是否普遍适用取决于程序具体用来作什么。
     1)只要你在每一副本上明显和恰当地表达版权声明和不承担保证的声明,保持此许可证
的声明和没有保证的声明完整无损,并和程序一起给每个其他的程序接受者一份本许可证的
副本,你就可以用任何媒体复制和发布你收到的原始的程序的源代码。
你可以为转让副本的实际行动收取一定费用。你也有权选择提供保证以换取一定的费用。
     2)你可以修改程序的一个或几个副本或程序的任何部分,以此形成基于程序的作品。只
要你同时满足下面的所有条件,你就可以按前面第一款的要求复制和发布这一经过修改的程
序或作品。
     a)你必须在修改的文件中附有明确的说明:你修改了这一文件及具体的修改日期。
     b)你必须使你发布或出版的作品(它包含程序的全部或一部分,或包含由程序的全部或
部分衍生的作品)允许第三方作为整体按许可证条款免费使用。
    c)如果修改的程序在运行时以交互方式读取命令,你必须使它在开始进入常规的交互使
用方式时打印或显示声明:包括适当的版权声明和没有保证的声明(或者你提供保证的声
明);用户可以按照此许可证条款重新发布程序的说明;并告诉用户如何看到这一许可证的
副本。(例外的情况:如果原始程序以交互方式工作,它并不打印这样的声明,你的基于程序
的作品也就不用打印声明)。
    这些要求使用于修改了的作品的整体。如果能够确定作品的一部分并非程序的衍生产品,
可以合理地认为这部分是独立的,是不同的作品。当你将它作为独立作品发布时,它不受此
许可证和它的条款的约束。但是当你将这部分作为基于程序的作品的一部分发布时,作为整
体它将受到许可证条款约束。准予其他许可证持有人的使用范围扩大到整个产品,也就是每
个部分,不管它是谁写的。
     因此,本条款的意图不在于要求或争夺对全部由你写成的作品的权利;而是履行权利来
控制基于程序的集体作品或衍生作品的发布。
     此外,仅将另一个不是基于程序的作品与程序(或与基于程序的作品)一起放在存储体
或发布媒体的同一卷上,并不导致将那个作品置于此许可证的约束范围之内。
     3)你可以以目标码或可执行形式复制或发布程序(或符合第2款的基于程序的作品),只
要你遵守前面的第1、2款,并同时满足下列3条中的一条。
     a)在通常用作软件交换的媒体上,随带其相应的、机器可读的、完整的源代码。这些源
代码的发布应符合上面第1、2款的要求。或者
     b)在通常用作软件交换的媒体上,随带一份为第三方提供响应的机器可读的源代码的书
面报价。其有效期不少于3年,费用不超过实际完成源程序发布的实际成本。源代码的发布
这些源代码的发布应符合上面第1、2款的要求。或者
     c)随带你收到的发布源代码的报价信息。(这一条款只使用于非商业性发布,而且你只收
到程序的目标码或可执行代码和按2)款要求提供的报价)。
作品的源代码指的是对作品进行修改时最优先择取的形式。对可执行的作品来说,完整
的源代码包括:所有模块的所有源程序,加上有关的接口定义文件,控制可执行作品的安装
和编译的脚本。作为特殊例外,发布的源代码不必包含任何常规发布的供可执行代码在上面
运行的操作系统的主要组成部分(如编译程序、内核等),除非这些组成部分和可执行作品结
合在一起。
     4)除非你明确按照许可证提出的要求去做,否则你不能复制、修改、转发许可证和发布
程序。任何试图用其他方式复制、修改、转发许可证和发布程序是无效的。而且将自动结束
许可证赋予你的权利。然而,对那些从你那里按许可证条款得到副本和权利的人们,只要他
们继续全面履行条款,许可证赋予他们的权利依然有效。
     5)你还没有在本许可证上签字,因而你没有必要一定要接受它。然而,没有任何其他东
西赋予你修改和发布程序及其衍生作品的权利。如果你不接受本许可证,这些行为是法律禁
止的。因此,如果你修改或发布程序(或任何基于程序的作品),你就表明你接受这一许可证
以及它的所有有关复制、发布和修改程序或基于程序的作品的条款和条件。
     6)每当你重新发布程序(或任何基于程序的作品)时,接受者自动从原始许可证颁发者
那里接到受这些条款和条件支配的复制、发布或修改程序的许可证。你不可以对接受者履行
这里赋予他们的权利强加其他限制。你也没有强求第三方履行许可证条款的义务。
     7)如果作为法院的判决或专利的侵权争议或任何其他原因(不限于专利问题)的结果,
对你强加了一些与本许可证的条件有冲突的条件,它们也不能开脱本许可证条款对你的约束。
如果你不能同时满足本许可证规定的义务和其他相关的义务,那么你可以根本不发布程序。
例如:如果某一专利许可证不允许所有那些直接或间接从你那里接受副本的人们在不付费的
情况下重新发布程序,唯一能同时满足两方面要求的办法是停止发布程序。
     如果本条款的任何部分在特定的环境下无效或无法实施,就使用条款的剩余部分,并将条
款作为整体用于其他环境。
    本条款的目的不在于引诱你侵犯专利或其他财产权的要求,或争论这种要求的有效性。
本条款的主要目的在于保护自由软件发布系统的完整性。它是通过通用公共许可证的应用来
实现的。许多人坚持应用这一系统,已经为通过这一系统发布大量自由软件作出慷慨的贡献。
作者/捐献者有权决定他/她是否通过任何其他系统发布软件。许可证持有人不能强制这种
选择。
      本节的目的在于明确说明许可证其余部分可能产生的结果。
    8)如果由于专利或者由于有版权的接口问题使程序在某些国家的发布和使用受到限制,
将此程序置于许可证约束下的原始版权拥有者可以增加限制发布地区的条款,将这些国家明
确排除在外,而在这些国家以外的地区发布程序。在这种情况下,许可证包含的限制条款和许
可证正文一样有效。
     9)自由软件基金会可能通过随时发布通用公共许可证的修改版或新版。新版和当前的版
本在原则上保持一致,但在提到新问题时或有关事项时,在细节上可能出现差别。
每一版本都有不同的版本号。如果程序指定使用于它的许可证版本号以及“任何更新的
版本”,你有权选择指定的版本或自由软件基金会以后出版的新版本;如果程序未指定许可证
版本,你可选择自由软件基金会已经出版的任何版本。
    10)如果你愿意将程序的一部分结合到其他自由程序中,而它们的发布条件不同,写信给
作者,要求准予使用。如果是自由软件基金会加以版权保护的软件,写信给自由软件基金会,
我们有时会作为例外的情况处理。我们的决定受两个主要目标的指导,这两个主要目标是:
我们的自由软件的衍生作品继续保持自由状态;以及从整体上促进软件的共享和重复利用。
不保证
    11)由于程序准予免费使用,在适用法准许的范围内,对程序没有保证。除非另有书面说
明,版权所有者和/或其他提供程序的人们“一样”不提供任何类型的保证,不论是明确的,
还是隐含的,包括但不限于隐含的适销和使用特定用途的保证。全部的风险,如程序的质量
和性能问题都由你来承担。如果程序出现缺陷,你承担所有必要的服务、修复和改正的费用。
     12)除非受适用法的要求或以书面形式达成协议,在任何情况下,任何版权所有者或任何
按许可证条款修改和发布程序的人们都不对你的损失负有责任。包括由于使用或不能使用程
序引起的任何一般的、特殊的、偶然发生的或重大的损失(包括但不限于数据的损失,或者
数据变的不精确,或者你或第三方的持续的损失,或者程序不能与其他程序协调运行等),即
使就这种损失的可能性咨询过版权所有者和其他人也不例外。
如何将条款使用于你的新程序
      如果你开发了一个新程序,并且希望它得到公众最大限度的利用,达到这一点的最好方
法是将它变为自由软件,每个人都能在遵守条款的基础上对它进行修改和重新发布。
     为了作到这一点,给程序附上下面的版权声明。最安全的方式是将其放在每个源程序的
开头,以便最有效地传递专有权保证信息。每个文件至少应有“版权所有”行以及指出版权
说明放在何处。
    <用一行空间给出程序的名称和它的用处的简单声明>
    版权所有(c)19XX<作者姓名>
   这一程序是自由软件,你可以遵照自由软件基金会发布的GNU通用公共许可证条款来修改
和重新发布这一程序,即可参照该许可证的第二版,也可参照(根据你的选择)任何更新的版本进
行。
    发布这一程序的目的是希望它有用,但不提供任何保证,甚至没有适销或适合特定目的的隐
含的保证。更详细的情况请参阅GNU通用公共许可证。
     你应该已经与程序一起收到一份GNU通用公共许可证的副本,如果还没有,写信给The
FreeSoftwareFoundation,Inc.,59TemplePlace,Suite330,Boston,MA02111-1307USA
    还应加上如何用电子邮件和书面邮件与你联系的信息。
     如果程序以交互方式进行工作,当它开始进入交互方式工作时,使它输出类似下面的简
短声明:
     Gnomovision第69版,版权所有(C)19XX作者姓名
     Gnomovision绝对没有保证。要知道详细情况,请输入showw
    这是自由软件,欢迎你遵守一定的条件重新发布它,要知道详细请况,请输入showc
    假设的命令“showc”和“showw”应显示通用公共许可证的相应条款。当然,你使用
的命令名称可以不同于“showc”和“showw”。根据你的程序的具体情况,也可以用菜单
或鼠标选项来显示这些条款。
     如果需要,你应该取得你的雇主(如果你是程序员)或你的学校签署放弃程序版权的声
明。下面是一个例子,你应该改变相应的名称:
     Yoyodyne公司在此放弃JamesHarker所写的Gnomovision程序的全部版权利益。
     <TyCoon的签名>,1989月4日1TyCoon,副总裁
     这一许可证不允许你将程序并入专用程序。如果你的程序是一个子程序库,可以考虑把
库链入专用应用程序中。如果这是你想做的事,使用GNULibrary通用公共许可证代替本许可
证。
发表于 2002-8-13 12:11:11 | 显示全部楼层
兄弟,贴得好,这样概念就清楚多了。。
 楼主| 发表于 2002-8-13 20:02:12 | 显示全部楼层

呵呵~~

是的啊,学linux不了解下这个还真的说不过去。
发表于 2002-8-14 03:52:54 | 显示全部楼层
对这个是必读的.....
多谢linuxbaby兄弟。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表