2009-12-22 29 views
0

我们正在开发一个封闭源代码的专有产品,它使用了很多开源项目,而且我们还没有对它们及其许可证进行系统编目。现在我们正在尝试构建一个部署包,我们希望达到合规性。什么是最简单的方法来完成这一点?如何遵守我们在产品中使用的所有开源许可证?

我们应该让所有的一个大的文本文件的许可信息还是应单独的文件对每个开源项目或每个许可证?我们是否必须包含项目附带的实际文件?它是否必须与项目文件位于同一个目录中?

我在想一个更简单的方法,但我不确定它是否符合。如果我们能发现所有的不同许可证(不项目),并组成一个大的文本文件,所有的每一个许可证空话,并在顶部有什么说什么“产品XYZ是专有软件,它集成了开源由以下许可证涵盖的软件。“ (单个开源项目不会按名称标识)。

或者,与上面相同,但通过名称识别每一个项目,他们的许可证一起,但都在1个文件?

回答

1

IANAL但是每个许可证通常会告诉你你必须做什么才能符合要求。像“必须包含此文本”或“必须包含此版权行”。所以阅读每一个,做它说的。如果他们没有说明一个特定的文件必须包含,那么,是的,你可以将它们合并。有人甚至说你必须将它添加到你的文档中作为归属。

2

你读你正在使用的每个组件的许可证,了解它,并尽一切可能说的是要遵守。

我们没有对它们及其许可证进行系统编目。

你真的应该。在发布您正在使用的某个组件之前,您希望找到的最后一件事情是具有不兼容的许可证或繁重的条款。

+1

你应该始终跟踪许可证,不管它们是否是开源的。并非所有的专有许可证都等同于您支付的BSD,并且专有许可证持有人可能不如Gnu许可证持有人那么好。 – 2009-12-22 17:27:25

+0

最近我不得不向一个没有经验的开发人员解释他们写的代码不可能被发货,因为他们无意中使用了一个封闭源代码产品的GPL库。幸运的是,撤消相对容易,功能可以用非GPL代码替代,但http://gpl-violations.org/等公开的GPL违规数量明确表明这种情况比您更频繁希望(和大多数侵权方应该知道更好)。 – 2012-05-04 19:02:22