V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Famio
V2EX  ›  程序员

开源许可证兼容问题请教

  •  
  •   Famio · 2020-12-05 00:11:22 +08:00 · 1545 次点击
    这是一个创建于 1450 天前的主题,其中的信息可能已经有所发展或是发生改变。
    假设我的项目 A,依赖了一个包是 B,但是我没有修改 B 的代码再分发,仅仅引用。
    那么 A 是 GPL3.0,B 是 BSD 协议,就会产生冲突。
    问题是,我项目 A 使用 GPL3.0 是否合规?请教大佬们这里面的学问。
    9 条回复    2020-12-05 00:43:21 +08:00
    chinvo
        1
    chinvo  
       2020-12-05 00:19:52 +08:00 via iPhone   ❤️ 1
    GPL 项目依赖 BSD 的包,不会冲突啊
    swulling
        2
    swulling  
       2020-12-05 00:20:13 +08:00 via iPhone   ❤️ 1
    你最终打包的产出物里面有没有 B ?

    如果有那需要用 GPLv3 发布,但是如果没有,就应该没事
    swulling
        3
    swulling  
       2020-12-05 00:20:47 +08:00 via iPhone   ❤️ 1
    看错了,你是 GPLv3 的话,没有任何问题
    baobao1270
        4
    baobao1270  
       2020-12-05 00:21:50 +08:00   ❤️ 1
    只引用二进制文件不涉及开源协议
    如果是在分发的面向最终用户的二进制包中包含 B 的二进制文件,需要注明
    swulling
        5
    swulling  
       2020-12-05 00:22:10 +08:00 via iPhone   ❤️ 1
    GPL 兼容 MIT BSD Apache,只要附加一些许可文件就行了。反过来不行
    Famio
        6
    Famio  
    OP
       2020-12-05 00:36:59 +08:00
    @swulling 我项目的最终发行物中包含了 B,那我是需要另外的著名许可文件?是需要怎样的形式,说明哪些包依赖哪些许可类型?我想尽可能的将自己的开源项目做到合规化,感谢了。
    chinvo
        7
    chinvo  
       2020-12-05 00:40:30 +08:00 via iPhone   ❤️ 1
    @Famio #6 留 license 文件在程序目录里,或者 about 之类的程序内声明
    Famio
        8
    Famio  
    OP
       2020-12-05 00:42:44 +08:00
    @chinvo 好的,非常感谢,学习了!
    Mithril
        9
    Mithril  
       2020-12-05 00:43:21 +08:00
    一般项目在选择自己的 License 时,都会保证和自己引用项目的 License 至少是兼容的。你用 GPL 去引 BSD 的是没问题的。但反过来因为 GPL 的限制更强,你只能继续用 GPL 。
    绝大多数的 License 都要求你在重分发它们的二进制的时候,带上人家的 License 。就是你打包的时候额外带一个文件夹里面装所有你引用库的 License 文件,或者其它的什么地方可以让你的用户看到人家的 License 。
    你可以参考 ElasticSearch 等等比较大型的开源项目。或者最简单的你看 Chrome 的开源说明也可以,就在帮助->关于里面,点那个开源软件的链接就可以了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2767 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:40 · PVG 15:40 · LAX 23:40 · JFK 02:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.