开发者社区> 问答> 正文

请问哪种授权可以把开源软件免费用于商业? 400 报错

请问哪种授权可以把开源软件免费用于商业? 400 报错 mit可以吗

展开
收起
爱吃鱼的程序员 2020-06-01 10:55:42 459 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    MIT、Apache 和 BSD 都完全没问题
    ######

    lgpl也行,但是有条件

    还有pd

    ######gpl也行, 前提是你也整体gpl######

    GPL就算了,用了GPL,你的整个项目都必须GPL开源,

    还是使用:MIT, BSD 和 Apache 吧,放心,呵呵; LGPL 将就可以使用。

    ######这个不一定,如果你的软件只是调用GPL的接口,并且发布时不与GPL打包,可以不用开源。比如在Linux下运行的软件(就可以是商业软件)就是典型例子。######

    对了。就这个话题,我也弱弱的问一句。如果按照GPL。无论哪个版本。全部开源,但商业模块中,经过优化的部分不开源是否违法法律,就是说,假设一个代码,有A,B,C模块,确实全部开源。但是B模块存在一个对应的B+模块,功能完全一样,只是B+是对于B优化的,而B是有源码的,B+源码不开放,至于用户是用B还是B+,他们自己选择,此时B+的存在,是否违法。

    我的理解,首先,有全开源的代码,这符合GPL。但是未开源的代码B+并没有强制给予用户,是由用户自己选择的,当然也不收费,此时是否受GPL约束?

    ######GPL是一种传染性很强的开源协议,只要你的代码里有GPL代码,哪怕只有一句,你的代码就必须开源。除非B是你开发的,那B+是否开源也是你说了算。只有纯粹在调用GPL接口时闭源才没问题。比如在Linux中调用操作系统接口。######

    引用来自“lucky_star”的答案

    对了。就这个话题,我也弱弱的问一句。如果按照GPL。无论哪个版本。全部开源,但商业模块中,经过优化的部分不开源是否违法法律,就是说,假设一个代码,有A,B,C模块,确实全部开源。但是B模块存在一个对应的B+模块,功能完全一样,只是B+是对于B优化的,而B是有源码的,B+源码不开放,至于用户是用B还是B+,他们自己选择,此时B+的存在,是否违法。

    我的理解,首先,有全开源的代码,这符合GPL。但是未开源的代码B+并没有强制给予用户,是由用户自己选择的,当然也不收费,此时是否受GPL约束?

    我觉得如果B+不对软件包有调用, 而且B+不打包在软件包里而是由用户自行下载, 并且软件包包含默认B就能运行, 那应该不算违规, 不然linux内核调用的闭源驱动没得混了........
    ######B+肯定不对B有任何调整。只是优化。我也在琢磨符合开源精神的商业思路。毕竟需要优化版本的,都是愿意出钱的。但是愿意出钱要优化版本的,也是基于整体系统没有问题。要整体系统没问题,自己闭门搞,是绝对不靠谱的。
    ######其实只要掌握这个原则,GPL只要开源,你可以干任何你想干的事情。LGPL只要不修改源代码,并且使用动态链接,也可以干你任何想干的事情。######这种优化一定要开源的,就算你使用的是LGPL,你修改了LGPL的源代码就要开源。
    2020-06-01 11:29:13
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
如何用阿里云快速构建游戏发行技术体系 立即下载
如何使用AWS构建跨地区的应用体验 立即下载
如何使用 AWS 搭建跨地区的应用体验 立即下载