在FreeBSD下写code,特别是写个驱动,改个内核啥的,是不是必须跟Linux kernel完全不一样的实现方法?要不然不就陷入GPL协议了么?
如果是这样那FreeBSD下做开发得多难啊。
FreeBSD 做开发是不是要避开所有GPL代码?
-
- 帖子: 124
- 注册时间: 2008-08-30 10:52
- astolia
- 论坛版主
- 帖子: 6434
- 注册时间: 2008-09-18 13:11
Re: FreeBSD 做开发是不是要避开所有GPL代码?
如果只是自己用,不用管。如果需要分发,对于你自己的代码,你可以弄个双许可证之类的。别人的代码,你可以弄个隔离层
-
- 帖子: 124
- 注册时间: 2008-08-30 10:52
Re: FreeBSD 做开发是不是要避开所有GPL代码?
我自己在linux kernel有个driver,是gpl协议的。现在要移植到freebsd里,可以一样的代码用两个license?
-
- 帖子: 124
- 注册时间: 2008-08-30 10:52
Re: FreeBSD 做开发是不是要避开所有GPL代码?
隔离层是怎么弄?
- astolia
- 论坛版主
- 帖子: 6434
- 注册时间: 2008-09-18 13:11
Re: FreeBSD 做开发是不是要避开所有GPL代码?
如果完全是你自己的代码,那么随便你弄几个不同的授权协议都没问题
如果你的代码中用了别人的gpl代码,一个简单的方式是联系代码作者,向他说明情况,请他给你单独以其他协议授权,一般都可以成。
隔离层你可以参考google在android上的做法 https://www.aliyun.com/jiaocheng/138663.html,基本操作就是建立一个接口层,将gpl代码的功能通过IPC之类的远程调用接口公布出去,其他协议的代码就通过接口来执行功能。
再说了,就算你还是用gpl发布驱动,那也没什么,有例外条款不会导致驱动的gpl传染系统其他部分 https://www.zhihu.com/question/19771481 。就像上面的链接里的例子,给photoshop弄个gpl的插件并不会导致photoshop本身也变成gpl。只是你的驱动代码永远不会被freebsd纳入官方代码库而已
如果你的代码中用了别人的gpl代码,一个简单的方式是联系代码作者,向他说明情况,请他给你单独以其他协议授权,一般都可以成。
隔离层你可以参考google在android上的做法 https://www.aliyun.com/jiaocheng/138663.html,基本操作就是建立一个接口层,将gpl代码的功能通过IPC之类的远程调用接口公布出去,其他协议的代码就通过接口来执行功能。
再说了,就算你还是用gpl发布驱动,那也没什么,有例外条款不会导致驱动的gpl传染系统其他部分 https://www.zhihu.com/question/19771481 。就像上面的链接里的例子,给photoshop弄个gpl的插件并不会导致photoshop本身也变成gpl。只是你的驱动代码永远不会被freebsd纳入官方代码库而已
-
- 帖子: 124
- 注册时间: 2008-08-30 10:52
Re: FreeBSD 做开发是不是要避开所有GPL代码?
如果完全是你自己的代码,那么随便你弄几个不同的授权协议都没问题
------------
你给的知乎链接里这么写的,那还是绕不开GPL的。这个驱动一直是我们公司在做,已经合并进kernel发布好几年。
“如果我以GPL协议发布了某种软件,我是否可以再使用其它协议发布同一款软件?可以,但必须是兼容 GPL 的协议。”
------------
你给的知乎链接里这么写的,那还是绕不开GPL的。这个驱动一直是我们公司在做,已经合并进kernel发布好几年。
“如果我以GPL协议发布了某种软件,我是否可以再使用其它协议发布同一款软件?可以,但必须是兼容 GPL 的协议。”
- astolia
- 论坛版主
- 帖子: 6434
- 注册时间: 2008-09-18 13:11
Re: FreeBSD 做开发是不是要避开所有GPL代码?
这种说法不正确,这只限于软件中包含了其他人的GPL代码的情况。如果你拥有完全的代码版权,你想用其他不兼容的许可证发布也没任何问题,甚至可以在新版本停止GPL授权换成其他的。
前者有Qt同时以LGPL和闭源的商业授权发布,后者有jQuery从GPL换到MIT
-
- 帖子: 124
- 注册时间: 2008-08-30 10:52
Re: FreeBSD 做开发是不是要避开所有GPL代码?
好的,太感谢了。