24

我们正在评估几个用于图形操作的 Python 库。我们尝试了“networkx”(http://networkx.lanl.gov/)和“igraph”(http://igraph.sourceforge.net/)。

虽然两者都是优秀的模块,但 igraph 因其性质而更快 - 它是 libigraph 的 Python 包装器 - 一个极快的图形 C 库(使用 LAPACK 等)。

现在,igraph 库是 GPL 许可的。我的问题是:我可以导入 igraph 并在我的商业 Python 脚本中使用它吗?

(这是一个普遍的问题,不仅限于 igraph。如果答案很明显,我们深表歉意——我是许可证新手!)

谢谢,拉吉

编辑:更具体地说,简单地导入 GPL Python 模块是否会使我的商业代码易于向公众发布?

4

6 回答 6

32

IANAL 等,但是:

自由软件基金会一直声称,链接到 GPL 涵盖的库的软件是派生作品,因此需要 GPL 本身涵盖(实际上,这是 LGPL 许可证的主要区别)。我不知道在不同司法管辖区的法院判例中情况如何,等等,但如果你不想冒险就这个问题提起诉讼[这无疑会带来成本和糟糕的公关,即使它最终成功],如果您不想将源代码分发到您的代码,避免链接到 GPL 库(包括动态链接)可能更谨慎。

于 2009-06-16T03:45:44.963 回答
12

伊纳尔,但是:

现在,igraph 库是 GPL 许可的。我的问题是:我可以导入 igraph 并在我的商业 Python 脚本中使用它吗?

的。您可以编写商业软件并在 GPL 下分发它。GPL 上没有任何东西可以阻止商业。它甚至明确表示您可以随意出售您的软件,

更具体地说,简单地导入 GPL Python 模块是否会使我的商业代码易于向公众发布?

不。你不必释放任何东西。你甚至不必分发任何东西。

如果您曾经将您的程序分发给某人,您必须提供(仅限此人)源代码,并给予在同一许可下修改和分发它的完全自由。

在 GPL 下分发某些东西或在您的代码中使用 GPL 库不会强迫您创建一个网站并将您的程序提供给世界上的每个人。

于 2009-06-16T04:18:47.580 回答
3

一些建议:

  • 寻求适当的法律建议。
  • 联系图书馆的作者。问他们:
    • 他们对您在应用程序中使用他们的软件的看法;
    • 如果他们就您的申请与您签订商业协议;
    • 关于他们可能准备与您合作的其他方式。
于 2009-06-16T03:59:18.453 回答
2

如果您的软件可以在不使用 GPL 代码的情况下使用而不会丢失任何功能,那么您的状态非常好。许多非自由程序使用 readline 库,如果可用,但默认情况下没有启用它,因此它们可以从它的存在中受益,但不会违反其许可证。如果这些项目选择使用 readline 库进行行编辑,那么它们将属于 GPL 的范围并受其条款的约束。

于 2009-06-16T03:54:05.863 回答
-1

据我所知,GPL 许可证对开源项目是免费的。
大多数图书馆都提供购买商业许可证以用于商业用途的选项。
联系图书馆的作者。

这取自Wt的网站:

Wt 可以使用 GPL 或商业许可证。

如果您希望通过 GNU 通用公共许可证 (GPL) 使用该库,您可以使用 Wt 构建一个 Web 应用程序,并将其部署到您自己的 Intranet 或 Internet Web 服务器,用于任何目的,而无需制作源代码免费提供。

请注意,如果您以二进制形式传递您的 Web 应用程序,无论是出售还是免费赠送,那么您必须根据 GPL 条款包含源代码。这也适用于以原始或修改形式重新分发 Wt 库。

商业许可证没有此类限制。请访问我们的许可信息页面,了解许可条款、定价和订购信息。

于 2009-06-16T03:49:25.930 回答
-1

您可能需要查看HOWTO:选择一个开源许可证及其第二部分。它为您提供了一个决策树,为程序员提供了一个许可证,并提供了有关特定情况的详细信息。这些文章也很清楚。

于 2009-06-16T09:25:26.320 回答