V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ren2881971
V2EX  ›  开源软件

想咨询一个关于开源软件 GPL-2.0 License 的使用问题。

  •  
  •   ren2881971 · 2022-03-03 09:14:10 +08:00 · 1723 次点击
    这是一个创建于 997 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如果在自研产品中只是调用 GPL-2.0 开源软件(本地部署)提供的 Web API ,并没有改动开源软件的源代码,那么自研产品也需要遵守 GPL 协议公开源代码么?
    sean10
        1
    sean10  
       2022-03-03 09:31:49 +08:00
    不用. 感染条件是同一进程空间. 存在进程间隔离就不用.
    ren2881971
        2
    ren2881971  
    OP
       2022-03-03 09:46:08 +08:00
    @sean10 这就是所说的动态链接 不需要遵循 GPL ?
    mikewang
        3
    mikewang  
       2022-03-03 10:35:50 +08:00
    (不是法律上的建议)
    在我理解中,使用到 GPL 软件提供的网络服务的话可以不开源,AGPL 则须开源。AGPL 的产生就是为了弥补 GPL 网络服务不开源的缺陷。
    如果是本地部署的话,因为分发了使用 GPL 的软件,需要开源提供 Web API 服务的部分,调用 API 的部分(视为另一个独立的程序)则不受 GPL 感染,可以保持闭源。
    使用动态链接库的话,争议更大一点,其中也有不少官司
    ren2881971
        4
    ren2881971  
    OP
       2022-03-03 13:45:15 +08:00
    @mikewang 我可能没表达清楚~ 我的产品是直接调用开源软件提供的 web API 服务,然后调用开源软件 web API 的代码跟产品是集成在一体的,并没有再抽象出一个独立调用 API 服务的应用
    mikewang
        5
    mikewang  
       2022-03-03 15:36:21 +08:00
    @ren2881971
    存在进程隔离就不用开源(例如 web.exe 是开源软件进程,program.exe 是您产品的另一个进程,是分开的)
    那么您只需要在声明中说明使用了 web.exe 这一开源软件,不需要开源 program.exe 。
    (当然,program.exe 中调用 API 的代码也不必开源)
    sean10
        6
    sean10  
       2022-03-03 16:19:11 +08:00 via Android
    @ren2881971 动态链接,也是同一进程空间的
    ren2881971
        7
    ren2881971  
    OP
       2022-03-03 17:18:49 +08:00
    @mikewang 感谢,明白了,解释的十分清晰,受教了!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2752 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 08:15 · PVG 16:15 · LAX 00:15 · JFK 03:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.