28

我试图弄清楚“衍生作品”的法律后果在哪些情况下会发挥作用。我的代码究竟何时是衍生作品

  • 在 GPL 下发布的 PHP 框架。

由于 PHP 拥有自己的许可证并且您正在使用 PHP 构建该框架,这不是 GPL 无效吗?

  • 商业 Wordpress 主题?

这不是“衍生作品”,因此因为 wordpress 是 GPL 而无效吗?

  • 插入到现有 GPL 框架中的商业类 - 但在该类中不包含对该框架的引用。

是衍生作品吗?

你看,我最初认为所有基于(或为)某事物构建的代码都是衍生代码——但事实并非如此。例如,苹果在他们的操作系统中使用了 Linux 部分——但他们的操作系统不是在 GPL 下发布的。

我们大多数人都为语言或基于这些语言的系统构建了库。那么我们的代码什么时候会成为别人代码的衍生品呢?

4

9 回答 9

8

伊纳尔。需要记住的一件事:几个项目明确地围绕“衍生工作”概念划定界限,以限制它可能包含的内容。

例如,由于程序在操作系统上运行的方式,在 Linux 内核上运行的每个程序最终都会将内核代码包含到操作程序中。为了便于编写程序,通常在编译程序时使用头文件,以便它知道如何合并内核位。Linus Torvalds 表示,这种使用不会使程序成为内核的衍生作品。

在其他情况下,例如 PHP(和 C,在较小程度上),不能声称该语言是其库的衍生作品。当然,您可以调用strlen(),并且在链接时或运行时,您的程序链接到您未编写的库。但程序本身并不是语言或运行时的衍生作品。在许多情况下,所使用的库仅公开标准的实现,因此该程序不是该库的具体派生。因此,您调用的 C 程序strlen()可以链接到其中包含的任何 C 库strlen()。您的程序不会自动成为 Glibc 的衍生作品。甚至 PHP 也有多种实现(Resin 网络服务器附带了 Java 中的 PHP 实现)。因此,即使 PHP 是 GPL,您的程序也可能不需要。

框架实际上是一组扩展的库,并且适用于库的正常规则。例如,如果框架是标准的一种实现,那么将它与您的应用程序一起分发可能违反了 GPL,但仅仅使用它就不会,因为您的应用程序是标准的衍生品,而不是框架的这个特定实例. 例如,使用 EJB 的应用程序可以在 IBM WebSphere、RedHat 的 JBoss、Bea 的 Weblogic 等上运行,而不必遵守 JBoss 的许可。也许将 JBoss 和您的应用程序放在同一张 CD 上会违反 JBoss 的许可,但您的应用程序在其他方面不受限制(除非其中包含 JBoss 的部分内容)。

如果所讨论的框架不是标准并且没有其他人实现它,和/或您必须在自己的代码中包含框架的一部分,那么您的应用程序可能是衍生作品。考虑一个 linux 内核模块:创建一个不违反 GPL 的模块是很困难的,因为大多数模块必须包含内核代码才能完成它们的工作。nVidia 通过创建一个没有内核代码但不是功能齐全的模块的专有 blob 来回避这一点,并添加了一些 GPL 胶水代码,使其成为一个模块。大多数内核开发人员认为将内核和驱动程序一起分发是违反 GPL 的(因为您通过添加一个模块来创建内核的派生作品,但该模块不是 GPL)但单独分发模块并不会创建派生工作直到最终用户将其合并,

请记住:并非所有项目对其使用的许可证都有相同的解释。根据规定的许可,您可能在您的合法权利范围内以某种方式使用代码,但您可能不想被起诉,因此如有疑问,请咨询原始版权所有者的律师。

于 2009-12-16T18:05:28.063 回答
3

编辑补充:我不是律师,我不在电视上玩,也不假装在互联网上。

从版权法:

“衍生作品”是基于一个或多个预先存在的作品的作品,例如翻译、音乐改编、戏剧化、虚构化、电影版本、录音、艺术复制、删节、浓缩或任何其他形式一部作品可能会被重铸、转换或改编。由编辑修改、注释、阐述或其他修改组成的作品,作为一个整体,代表作者的原创作品,是“衍生作品”。

英文,来自维基百科:

与版权法有关的衍生作品是一种富有表现力的创作,其中包括以前创作的第一部作品的主要受版权保护的元素。

您提到的那些都不是衍生作品,因为您完成的产品中没有任何受他人版权保护的内容,也不是基于他人版权的。-- 但是,使用的工具很好。

一个侧面的例子:在前世,我曾经制作有声读物并在 Ebay 上销售。我收到了停止销售 CS Lewis 书籍音频版本的停止令。尽管我出售的是原创作品,但它是基于受版权保护的文本,因此它是衍生作品。

于 2009-12-11T19:02:20.370 回答
3

答案的症结取决于新作品的分发是否包括您所引用作品的代码。听起来 GPL 就是您要问的具体内容,所以我们会坚持下去。

案例 1:如果您创建一个 PHP 框架并在包含该框架的源代码中包含根据 PHP 许可证许可的代码,那么您的代码将是衍生作品。对于 PHP 源代码,这意味着您必须包含 PHP 许可信息并标识您的源代码中根据 PHP 许可许可的部分。

如果您在所讨论的 PHP 框架源代码中编写了所有代码,则可以根据您希望的任何许可发布它。大多数 PHP 框架(根据我的简短搜索)似乎是 BSD 许可的,但没有什么能阻止您创建自己的 GPL 许可框架。

案例 2:Wordpress 主题是 GPL(至少 PHP 代码是)http://wordpress.org/development/2009/07/themes-are-gpl-too/

案例3:取决于您的要求。如果你问是否可以创建一个可以与现有框架一起使用的新类(并且不引用框架中的任何内容,它应该包含在其中),但你不是在创建框架的新版本,包括类,并分发这个修改后的编译,那么不,那不会是衍生作品。

即使您确实包含了它,在您决定分发该版本之前,您仍然不会遇到许可问题。那时,您将拥有一个衍生作品(因为它包含其他代码),并且该现有代码的许可在确定您是否被允许这样做时变得很重要。

知道为什么要问这个问题可能会有所帮助,因为涉及到很多假设。您可以联系 EFF 或 SFLC 就特定情况提出具体问题。

于 2009-12-11T19:22:37.390 回答
2

IANAL,但其中大部分内容非常简单。从根本上说,衍生作品是基于其他东西的东西。这并不意味着由预先存在的作品创造的东西,或与原作分开的东西。通过你的一些例子......

PHP 许可证用于使用该语言,大概是解释器。用 PHP 编写的程序不是衍生作品,因为它们本身不包含 PHP,而是编写为与 PHP 一起工作并由它解释。(即便如此,软件也没有理由不能有多个许可证,只能在条件交叉的情况下使用。)

我不了解 Wordpress 主题,但这听起来像是您使用 Wordpress 创建并与 Wordpress 一起使用的东西。如果他们合并了一些预先存在的东西,比如模板,他们将是模板的衍生作品。

专有许可下的作品可以与 GPL 代码并存,但编译会从源代码(而不是编译器)创建衍生作品,链接会创建进一步的衍生作品。因此,如果您有一个包含一些 GPL 代码的可执行文件,它是该代码(以及其他代码)的派生,并且根据 GPL 的条款必须在 GPL 之下。

Apple 实际上并没有在 MacOSX 中使用 Linux。他们的操作系统基于 BSD,在功能上类似于 Linux,但操作系统内核不同,许可也不同。他们确实发布了 GPL 软件,就像他们的许多软件开发工具包一样,但任何人都可以这样做。独立程序的集合不是实际工作,Apple(与其他任何人一样)可以在 GPL 下发布 GPL 软件。

如果您要运送的产品中包含其他人编写的内容,则它是衍生作品。如果没有,一般不会。无论您是否使用其他人的程序来创建它,或者您是否需要使用其他人的程序来使用它,或者您是否将其他人的程序与您的东西一起提供,都没有关系。

于 2009-12-14T21:17:50.007 回答
1

你看,我最初认为所有基于(或为)某事物构建的代码都是衍生代码——但事实并非如此。例如,苹果在他们的操作系统中使用了 Linux 部分——但他们的操作系统不是在 GPL 下发布的。

如果你指的是gccbashshell,这些都不是 Linux 的一部分。这些是独立程序,Apple 对它们的使用GPL 约束。例如,如果 Apple 对 进行修改gcc,则这些修改必须在 GPL 下获得许可。

例如,如果 Apple 要将部分 linux 内核借入自己的内核,那么他们就必须在 GPL 下发布自己的内核。

于 2009-12-14T20:49:03.430 回答
1

很抱歉没有回答——我不能直接评论答案。

OS X 不是基于 Linux 的。它的内核叫做 Darwin,它基于 NeXTSTEP/BSD 并且是开源的:http: //developer.apple.com/darwin/

有一个名为 PureDarwin 的项目,它基于它发布了一个完整的发行版。

于 2010-02-01T16:11:18.377 回答
0

PHP 许可证对您使用它构建的内容没有任何限制。如果你想对你用 PHP 制作的东西进行 GPL,PHP 许可证中没有任何东西可以阻止你。

另请注意,即使有,您也可以在 GPL 下分发框架的源代码形式 - 特定软件的许可证不会扩展到可能用作或不用作软件输入的纯文本。

不过,伊纳尔。

于 2009-12-11T19:04:33.457 回答
0

从理论上讲,GPL 要求将任何静态链接到 GPL 下的任何代码的内容发布回 GPL 社区。

http://63.249.85.132/open_source_license.htm

这是否意味着像 Ruby 和 PHP 这样的动态脚本不在此许可下?

于 2009-12-12T00:24:20.183 回答
0

GPL 是原始版权所有者拥有的软件分发许可证,只要您不自己分发 GPL 代码可以忽略它。

如果您将 GPL 代码与不兼容 GPL 的代码一起分发,那么您就违反了许可,因此您没有复制权,这意味着您对原始 GPL 代码犯下了侵犯版权的行为。您的代码仍然是您的版权,并且可以根据您选择的任何许可使用,除非它是衍生作品。

GPL 断言任何与 GPL 代码链接的东西都是衍生作品,但至少可以说是可疑的,特别是如果该代码的接口是公共的。

但是,如果他们的主张在法庭上得到支持,例如根据日本版权法,原始作者将获得您所有代码的版权,但修改的精神权利除外,这意味着无论您获得何种许可,他们都可以自由分发您的代码的免费副本即使您从未分发过 GPL 代码,也可以使用它。

请注意,即使您的代码不是衍生的,尽管有链接,您仍然会在分发时侵犯 GPL 代码的版权。不过,您可以将它分发给 GPL 程序的用户,让他们进行链接。

更模糊的是,最初从其他代码派生但不再包含任何原始代码的代码会发生什么。大多数人似乎认为删除代码就足够了,但真的吗?没有人可以确认。

于 2009-12-17T06:01:17.803 回答