分配给选定数量的客户时的GPL限制?

时间:2009-11-19 15:25:10

标签: gpl

我有一个小型桌面应用程序依赖于VLC,这是一个根据GPL许可的应用程序。它不与任何VLC库链接,但它创建了一个VLC子进程并通过stdin和stdout流进行通信。我的申请将被许多客户使用。它不会是一个公开的工具。

在这种情况下,GPL要求我做什么?我是否只为这些客户提供开源代码?或者我是否需要向全世界公开发布它?

修改
有些人提到,如果我只是在没有实际链接GPL代码的情况下调用GPL可执行文件,那我就没事了。但是,在看到这些消息后,我不太确定:

我会接受能够为我澄清这个问题的答案。

7 个答案:

答案 0 :(得分:11)

此答案不适用,您只是启动VLC

如果您所做的只是启动和分发VLC,您只有义务向从您那里收到VLC的任何人提供完整(即使修改过)的源代码。如果您链接(或使用)GPL2 / GPL3代码,则GPL适用于您的整个代码库。这不是你的情况。

原始答案,原因是ambiguous question

分发后,GPL适用。如果您将其交给您的妻子,则适用GPL。如果您将其提供给您的邻居,则适用GPL。如果你把它交给你的狗......你可能是安全的,我怀疑狗会理解它在GPL下的权利。

必需向收到程序副本的任何人提供完整的源代码。如果他们分发它,他们必须为获得程序副本的任何人提供完整的源代码,因为他们是分发它的人。

您不能告诉别人不要分发GPL代码。由于您的程序与之相关联,因此其涵盖的合并作品并且许可适用。不要要求收件人签署具有额外复制限制的NDA以接收GPL承保的代码,如果您这样做,您就失去了分发(甚至使用)它的权利。

Google readline vs editline看看我的意思:)或者libreadline vs libedit。

GPL并不关心有多少人收到你的节目。一旦它离开你的手,即使是一个人,它也适用。我强烈建议你遵循这封信,特别是在处理像VLC这样的事情时。

four freedoms that the GPL guarantees取决于对涵盖源代码的访问权限。我同意并不同意其背后的哲学,事实仍然是你受到许可条款的约束。

如果你从不分发某些东西......那就去了。合并不兼容的许可证等。限制性较少的许可证不关心(即BSD)..一旦您分发,GPL只关心

同样,任何分发GPL代码的人都是负责向任何从他们那里收到副本的人提供源代码的人。 LGPL并非如此...... AGPL引入了更多的治理。它留给读者研究差异的练习。

电子邮件licensing@fsf.org将来会有这样的问题,他们是许可证的保管人。尽管存在着政治冲突,但他们是非常友好和乐于助人的人。

<强>最后

很抱歉有点过于渴望和过度热心,但至少我没带Cthulhu进入它:)

答案 1 :(得分:4)

答案关键取决于“依赖”的含义。如果您的代码是作为一个单独的进程运行,并与VLC通过套接字或管道或其他一些进程间通信方式进行通信,那么您使用VLC打包代码,并且对您可以这样做的方式没有任何限制。如果您对VLC进行了实际更改,或者将您的代码与VLC链接,那么您的代码将受GPL约束。两者之间的任何东西都是判断力。

如果您的代码受GPL约束,您可以根据需要进行分发,但所有分发都将遵循GPL的条款。简而言之,您必须提供二进制文件的源代码或提供书面报价来提供源,并且您分发的每个人都拥有与您相同的GPL权限。您不必公开您的资料,但任何从您那里获得资料的人都有权这样做。您可以出售该软件,但您不能禁止任何其他人出售或免费赠送。

答案 2 :(得分:2)

您必须将来源传递给每个客户。每个客户都可以自由地以任何形式向任何人发布来源。

答案 3 :(得分:1)

我想您要查看GPL FAQ

特别是,您可能会对此question/answer感兴趣:

  

GPL是否要求将修改版本的源代码发布给公众?

     

GPL不要求您发布修改后的版本或其任何部分。您可以自由地进行修改并私下使用它们,而无需释放它们。这也适用于组织(包括公司);组织可以制作修改后的版本并在内部使用它,而无需将其发布到组织外部。

     

但是如果您以某种方式向公众发布修改后的版本,GPL要求您根据GPL将修改后的源代码提供给程序的用户。

     

因此,GPL允许以某种方式发布修改后的程序,而不是以其他方式发布;但决定是否发布它取决于你。

答案 4 :(得分:0)

取决于有点模糊。如果您需要在他们的机器上安装VLC并且您的程序启动VLC,您应该没问题。但是,如果您使用的是代码的一部分或VLC的修改版本,那么您还需要发布代码。

答案 5 :(得分:0)

如果您的程序是从头开始编写的,并且不会重复使用来自任何其他软件的代码,您可以随意许可或分发它(免费,付费,关闭,打开)。调用VLC子进程并不等同于重用GPL代码。

答案 6 :(得分:-3)

我不是律师,但我相信你不能为了钱而分发VLC(例如在你的非自由申请的CD上)。如果您使用来自VLC的任何代码,那么您的应用程序必须是开源的。

但基本上我认为你必须告诉你的客户“我不能合法地用这个磁盘分发VLC,请从”或者从你的安装程序中获取它只是从官方网站下载。