Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Licensing 应用程序的GPL库_Licensing_Gpl - Fatal编程技术网

Licensing 应用程序的GPL库

Licensing 应用程序的GPL库,licensing,gpl,Licensing,Gpl,以前可能有人问过这个问题,但我在搜索中找不到答案,所以我来了。我试着读维基百科,但结果弄糊涂了 我可以创建一个在前端或后端使用GPL许可库的应用程序(免费或付费) (我假设大多数人已经这样做了,只是想检查一下)是的,您可以销售包含GPL代码的产品。然而,有一个重要的警告 如果你创建了一个应用程序,你必须准备好向你的任何/所有客户提供它的完整来源*。然后谁能有效地编译这个源代码并免费提供相同的产品 如果您创建的服务器端代码仅由您托管,则无需向客户提供源代码 (*)其实比这要复杂一点。如果静态链接G

以前可能有人问过这个问题,但我在搜索中找不到答案,所以我来了。我试着读维基百科,但结果弄糊涂了

我可以创建一个在前端或后端使用GPL许可库的应用程序(免费或付费)


(我假设大多数人已经这样做了,只是想检查一下)

是的,您可以销售包含GPL代码的产品。然而,有一个重要的警告

如果你创建了一个应用程序,你必须准备好向你的任何/所有客户提供它的完整来源*。然后谁能有效地编译这个源代码并免费提供相同的产品

如果您创建的服务器端代码仅由您托管,则无需向客户提供源代码


(*)其实比这要复杂一点。如果静态链接GPL代码,您肯定需要发布源代码,但某些动态链接的方法可能是免税的。如果有人就此提出质疑,您可能必须准备支付法律费用,因此,假设您需要根据请求发布所有代码可能更容易。

谢谢您的回答,这看起来确实相当复杂。我设想的情况是,应用程序前端和后端基本上都是原创作品,但都使用了GPL库。那么,这是否意味着,如果受到质疑,我们将不得不发布整个源代码?(在我看来,应用商店中的几乎所有应用都可能确保至少在GPL许可的库上)如果你静态地将你的应用链接到GPL的库,那么你的整个应用将被GPL覆盖。如果你动态链接到一个GPL库,而该库的使用是完全可选的(比如说许多受支持的视频编解码器之一),那么你可以声称GPL库的使用是可选的,因此你的应用不在GPL范围之内。因此,我怀疑AppStore中有相当大比例的应用程序使用GPL库。我想到了一种情况,比如说,PHP后端驱动系统,它使用一些GPL库。(例如喜鹊,它是GPL)。在这种情况下,代码甚至没有被遵守,所以链接的东西并不真正适用。你会托管后端吗?如果是这样的话,你还没有把它的二进制文件给任何第三方,所以没有人可以要求任何源代码。啊!所以这是有道理的。说得好。当我分发使用GPL库(假设)的前端时,我将被迫提供该库的源代码,但由于我不分发后端,我可以为自己保留该库。非常感谢。我投票结束这个问题,因为它是关于许可或法律问题,而不是编程或软件开发。欲知详情,请点击查看更多信息。@JasonMArcher Fair enough真的吗??每个软件都有许可证。。。在开发软件时选择合适的许可证似乎是一件很好的事情。