有关 GPL 协议,不改源码也不用动态链接,只是单独的服务,可以商用吗

2021-08-31 17:41:52 +08:00
 koebehshian

我同事说不行,我觉得可以吧,如果这样都不行,linux 内核就是 GPL 的,任何安卓软件都得开源了。

2057 次点击
所在节点    问与答
11 条回复
takeshima
2021-08-31 17:48:46 +08:00
gpl 没有禁止你收费,只是要求你开源。另外你说的独立服务是指什么?
AoEiuV020
2021-08-31 17:52:09 +08:00
GPL 、AGPL 、LGPL
最原始的 GPL 是确实存在漏洞可以通过提供服务不提供软件来绕过限制的,
mxT52CRuqR6o5
2021-08-31 17:53:05 +08:00
反正直接运行官方发布的 binary 是没问题的
ch2
2021-08-31 17:57:47 +08:00
你改了之后必须开源,原版不动有何不可
chinvo
2021-08-31 17:59:41 +08:00
动态连接问题不大.

GPL 的代码直接用, 只要你不发行最终二进制(比如开发一个在线 API 或者 SaaS), 也不需要开源. 如果你是个商业软件, 同时不对公众提供试用, 那么只需要向付费用户提供源码(但是不能阻止获得源码的用户将源码对外发行).

内核和应用的关系不太一样, 是特别例外.
ysc3839
2021-08-31 18:02:14 +08:00
如果说是运行一个 GPL 协议的软件通过网络给别人提供服务,比如运行一个网站程序供别人访问,不向别人提供软件本身的话,是不需要同时提供源代码的。
AGPL 则是需要的,具体情况可以看看 FAQ https://www.gnu.org/licenses/gpl-faq.zh-cn.html
AoEiuV020
2021-08-31 18:03:29 +08:00
等等,你说的服务是指什么,
我本来以为是说躲在服务器上通过接口提供服务,但你举例却是 linux,
总之直接运行软件成品是没问题的,
至于 linux 和安卓可没那么简单,安卓是要调用系统方法的,听说谷歌为此特地做了隔离才让上层应用可以不开源的,这过程必然有性能损失,
ysc3839
2021-08-31 18:08:32 +08:00
另外,Linux 内核的 GPL 协议不会传染用户模式进程是因为它们处于独立的进程空间中,一般会认为 (不严谨) 处于同一进程空间中就会被 GPL 传染,处于不同进程空间不会。
ryd994
2021-08-31 19:37:08 +08:00
GPL 是允许商业使用的,只要不“再分发”。
各大网站用 Nginx
各大云厂商用 Linux
企业内部用 MySQL
这都没有问题。

GPL 的边界在进程空间。不是同一个进程就没事。而且,linked library 有单独的例外。所以商业软件同样可以 link 到二进制的 GPL 库。

AGPL 才是禁止一切间接商用。只要用户能间接使用到 AGPL 的代码,那所以依赖于该代码的软件都需要开源。
mxalbert1996
2021-08-31 23:16:02 +08:00
@ryd994 单独的例外是指什么?我记得只有 LGPL 才允许动态链接时不开源。
agagega
2022-01-06 19:28:14 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/799096

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX