2012-01-09 68 views
1

我为政府组织(NIST)在线销售200美元的商业图书馆创建了C++包装。在他们的软件中,他们包括Windows 32 dll,Excel和其他窗口程序包装器的封装器,使用他们的dll的GUI程序以及Fortran源代码。我在Linux上工作,所以我重新编译了源代码并将其链接到了我的包装函数,并包含了一些我自己的函数用于单位转换。 Fortran源代码根本没有代码中的许可信息。我想要做的是将我的包装及其源代码发布为GPL项目,以便工程师可以使用该库的非Windows版本。我可以问NIST,但是从过去与政府的交往中,即使答案是肯定的,他们也总是说“不”。我知道一些认识NIST的人可以发现,但是除非我知道我有机会,否则我不想发波。针对商业的gpl许可

个人而言,我不认为这样做可以做到这一点,即不将许可证放在某个东西上并不意味着它是开源的......或者是否这样做?

回答

1

该作品是在版权或公共领域。这项工作在技术上可能属于公有领域,因为政府所生产的大部分资源都属于公有领域。

有一个简单的方法可以找到:询问他们“谁拥有这个软件的版权?”如果他们不回答,请提交信息自由法案,要求发现版权所有者。

如果它在公共领域,你可以做任何你想要的东西,如果有人持有版权,你需要请求他们的许可做任何事情。

+0

当你看到源代码时,你可以看到其他公司和国家的其他人对它的贡献,所以很可能是这样。我有点担心,由于他们之间和我们之间的政治关系,问他们可能会引起一些波动,但它看起来很喜欢这是找出答案的唯一途径。 – Richard 2012-01-12 12:32:23

2

仅仅因为某些东西没有明确的许可证并不会使其成为开源代码 - 事实上,假设是相反的,即如果您没有版权所有者的许可证,则无法使用码。例如,我公司的内部应用程序在源代码中没有许可信息,因为我们不在外部发布任何信息。如果您以某种方式遇到了我们的源代码控制存储库的转储,那么您就不能仅仅假设它处于公有领域就开始使用代码。

很难说为什么他们会向您提供Fortran源代码而不告诉您可以使用它做什么。据推测这是在某个地方拼写出来的。也许你可以链接到图书馆?

对于释放你的库的问题 - 纠正我,如果我错了,但它听起来像你使用NIST Fortran源来派生它,然后你想释放派生的工作在GPL下?你不能那样做,因为你首先没有权限使用源代码,更不用说重新授权它了。

+0

是的,这也是我的感受。 NIST对其源代码重新编译并与其他程序链接没有问题,但如果源代码包含该源程序,它们可能会出现问题。这不是我想要发布派生的工作;我只是想释放我写的包装器......但是然后你可能会认为这是派生的工作。我想要包括他们的来源的唯一原因是包装者可以链接到它。我可能只需要释放包装并让用户包含他们自己的源代码,尽管这会是一个痛苦,但这可能是唯一可以完成的方法。 – Richard 2012-01-09 16:22:33

+0

顺便说一句,NIST与源代码重新编译并链接到您的代码没有问题;这就是为什么他们包含他们的fortran源代码。他们的软件只有一个Windows 32的DLL,所以你必须重新编译它,无论如何,如果你想为另一个操作系统。我想发布封装的唯一原因是因为我看到其他工程师正在寻找一种在Linux上使用库的方法。 – Richard 2012-01-09 16:45:35

+0

啊我明白了。但是,如果他们让你使用他们的来源,那么他们在购买产品时可能必须向你提供某种许可证才能这样做,不是吗? – dsolimano 2012-01-09 17:00:30