2010-09-17 72 views
10

基本上就是这样。我在Matlab中有一些代码,我想发布它,以便任何人都可以使用它。此外,我想阻止代码在我之后关闭。我可以使用GPL授权我的Matlab代码吗?

问题:我可以选择GPL来授权吗?如果不是,我的选择是什么? (除了使用MATLAB,停止这我已经在考虑)


编辑

我只是编辑它,因为这是更准确的我的情况。不便之处,敬请原谅。

Q:是否建议使用GPL发布,以使其在社区发展我的Matlab代码?如果不是,你会选择什么?

回答

0

当然你可以在GPL下发布你的matlab代码。但是请注意,人们需要matlab来运行它。但是,您可以控制自己的代码,并根据您希望的任何许可证进行发布。

+0

因此,在Matlab许可证协议中没有特殊的条款,您必须按照他们想要的方式发布Matlab代码? – 2010-09-17 13:56:52

+0

不,没有。你可以自由地以任何你想要的方式分发你的代码。 – Geodesic 2010-09-17 22:33:23

+0

虽然我可以在GPL下发布它@Ben是正确的,当他认为它不会真的是件好事。它将完全冻结我的代码,因为(几乎)没有人能够重新发布它(不拥有Matlab库的重新发布权)。这是一个重要的观点,尽管你正确回答我的问题。谢谢! – 2010-09-19 20:24:25

2

谁拥有该代码? (如果你有付款来写它,可能是支付你的人 - 如果它是大学或学校项目,它可能属于他们)。

我不知道任何使Matlab代码特殊的东西,会阻止根据GPL发布。

+1

我支付研究费用,结果产生了一些代码。我不认为大学拥有代码,尽管它拥有我的研究成果(但作者身份)和我的灵魂。 – 2010-09-17 13:53:29

+1

我想我一定会仔细检查一下 - 你有一个可以检查的实际合同吗?也可以问大学某人的意见。 – JosephH 2010-09-18 03:04:06

+0

检查我的合同不会受伤,但我真的怀疑它说的是关于代码的东西。我敢肯定,它不会给我钱专利......这都是为了大众(就像我正在申请专利一样)。 – 2010-09-19 20:21:07

3

使用GNU Octave
它的约95%的语法与Matlab兼容。并且由于代码是您的创建,所以如果Matlab的EULA中有任何条款阻止您根据您需要的任何许可证发布您的代码,那么您总是可以声称它是Octave代码,而不是Matlab。

+0

我喜欢这是Octave代码而不是Matlab的唯一方法,唯一的是我使用(强烈)图像处理工具箱,并且与之相关的代码(imrotate,iradon等)可能不会与Octave一起使用。 – 2010-09-17 21:14:40

+0

尝试Octave伪造包,特别是图像包:http://octave.sourceforge.net/image/overview。html – 2010-09-18 09:27:49

+0

听起来不错,谢谢!我有一天要检查它,因为Matlab有许多烦人的事情。但我懒得做出改变: - | – 2010-09-19 20:18:00

0

@dave几乎没错。

毕竟,什么是“代码”?文字,你写的 - 无论是在Word中或在文本编辑器。所以基本上,你可以把它写在你的纸质笔记本上,并以你想要的任何条件发布它。

然而,运行它却是另一回事 - 所以要小心不要,或者至少提到它,你不拥有/版权任何MATLAB功能的权利,等等...... 合法的mumbo jumbo去这里 ...

+0

感谢您的回答,但这与@ dave's有同样的问题。有关更多信息,请参阅@ Ben的答案。 – 2010-09-19 20:25:35

4

既然你改变这个问题,我的帖子另一个答案:

使用BSD license

原因:

  1. 其简单而短。
  2. Mathworks has chosen BSD as a mandatory license在其代码交换库的代码 - Matlab Central

注意,它不包含Copyleft,因此您的代码可以在将来被关闭。

+0

再次感谢您的回答!我已阅读许可证和我不喜欢任何人都可以使用我的代码来开发工具我将在稍后收费。即使我没有被指控,我更喜欢它是免费的(如在自由中)。我会考虑只是为了能够在Matlab中发布我的代码,但我不认为它的好处超过了自由度的损失:-( – 2010-09-19 22:51:32

1

是的,你可以在GPL下发布MATLAB代码,人们可以重新发布你的代码,而不必提供MATLAB二进制代码或代码本身,因为通过指定你的代码是用于MATLAB,你提供了一个隐式权限来允许再分配没有附带MATLAB库的代码。

应该指出的是,如果任何GPL代码最初不是为MATLAB分发的(但对于Octave而言),则情况并非如此,因为重新分发者无法添加此隐式权限。

参见http://www.gnu.org/licenses/gpl-faq.html#InterpreterIncompat

相关问题