3

快速提问。

我正在将 GPL(而不是我创建)许可的 JavaScript 代码转换为 PHP。原始 GPL 是否有效,或者我可以在转换后的代码上放置任何许可证吗?

我在 SO 上找到了这个,但想知道它是否适用。

4

5 回答 5

13

这真的不应该被视为一个法律问题。这真的是关于做正确的事。

在看事情的法律方面之前,首先要考虑一下对原作者的常识和礼貌。法律方面确实应该重新考虑。

根据 GPL 许可由您的“翻译”产生的工作肯定是处理该问题的最佳方式。

您作为起点使用的 JavaScript 软件是由其作者在 GPL 下“赠送”给您的,感谢他/她的礼物的最佳方式是在 GPL 许可下做出您自己的贡献。

现在,如果由于某种原因您无法使用 GPL,那么您确实有两个选择:

  1. Contact the original author and get his/her approval for your plan and the license you want to use on your own code. The original copyright holder could even allow you to either make a proprietary derivative of this original work or to license it under both GPL and another open-source license of your choice to work-around any GPL restriction you may have.
  2. Do not start from that code, and create your own PHP software independently from the JavaScript implementation but re-using the idea you've learned from reading the JavaScript code. Re-using ideas from GPL code is a valid way to thank the original author whatever license you use.
于 2009-04-08T11:06:30.930 回答
6

IANAL,但如果您不是原作者,那么您的 PHP 版本将需要是 GPL。

“修改”作品意味着以需要版权许可的方式复制或改编作品的全部或部分,而不是制作精确的副本。由此产生的作品被称为早期作品的“修改版”或“基于”早期作品的作品。

所以将一个js库移植到php中就可以算作是对原始库的修改,然后你就受了许可的约束,可以在GPL下发布修改后的代码。

版权可能是愚蠢的并且仅适用于文本,但如果您已将原件加载到计算机中查看它,那么您已经复制了它(至少根据英国法律,版权适用于数字副本)。

该复制行为是在许可下进行的,如果您不遵守许可条款,则无论您是否制作进一步的衍生副本,您都已经违反了版权。

于 2009-04-08T10:03:50.957 回答
2

翻译不会删除版权。例如,考虑将 Windows 的二进制代码反编译为 Pascal,然后重新编译。你认为微软不会追随你吗?:)

我认为正确的方法是:

  • 研究代码并生成它的技术规范。然后使用此规范重写代码。如果你是偏执狂,这些任务可以由不同的人来完成。(众所周知,公司会这样做)
  • 或注明原作者并保留许可证。(您的代码是衍生作品)

这些建议可能不是绝对正确的,但它们不会给您带来麻烦。在考虑任何有争议的事情之前,您至少应该阅读:

http://www.gnu.org/licenses/gpl-faq.html

于 2009-04-08T09:59:13.637 回答
1

如果您是原始版权所有者,那么您可以在您喜欢的任何许可下发布副本或修改后的作品。当然,这不会改变先前发布的软件的许可。

于 2009-04-08T09:57:08.117 回答
0

您将 GPL 嵌入到 LGPL 应用程序或模块中,而不仅仅是包装器++;这个新模块将是 LGPL,您可以干净地使用 LGPL 模块而不会分散。这就是我们的许可律师告诉我们的。

我相信我的律师,但这并不意味着你应该盲目相信我的律师:)

于 2009-04-08T11:03:30.440 回答