2

我想在基于 C 的专有应用程序中使用 Bluez 蓝牙 (GPL) 库。我想要 GPL 解决方法来使用它。

我的计划是:

  1. 编写一个链接到 Bluez 库 (GPL) 的 LGPL 包装器库,还包括 Bluez 库头文件(也是 GPL)。因此包装器变成了 LGPL(对吗?)。

  2. 将 LGPL 包装库链接到我的专有应用程序中。

有了这个,我的专有应用程序就可以免受 GPL 污染了吗?

如果没有,这里正确的解决方法是什么?

提前致谢

4

3 回答 3

6

不,这是不可能的。GPL 要求整个应用程序在 GPL 下分发。没有规定让包装器来解决它,当然也没有规定 GPL “衰减”为 LGPL。(也许您正在考虑另一个方向 - LGPL 允许您重新许可为 GPL。)您想要做的是对 GPL 应用程序的经典侵权,并且几乎肯定会被追究(假设您被抓住了) .

正确的解决方法是编写您自己的蓝牙实现或在 GPL 下分发您的应用程序。

最后,标准免责声明适用:我不是律师。如果您无法自己阅读 GPL 并确定我刚刚告诉您的内容,那么您确实需要在接触任何 GPL 代码之前聘请律师为您解释。

于 2011-09-12T12:47:00.673 回答
5

这并不容易 :-) 你无法摆脱 GPL 的限制。

我公司也有类似的案例。我们选择的解决方案是将需要使用基于 GPL 的库(在我的情况下是 libiw)的功能分开,并编写一个同样基于 GPL 的独立应用程序(因此我们打开尽可能少的代码)。然后从我们的主应用程序启动“小程序”(例如通过 fork/execl 函数)并通过信号、管道或诸如 RPC 之类的东西与它通信。我不知道它是否适用于您的情况,因为我不知道您的应用程序要做什么,但这是我们选择的一种解决方法。

于 2011-09-12T12:54:13.967 回答
4

任何这样的变通办法都违背了 GPL 的精神,如果 FSF 点缀他们的 Is 并越过它 Ts,就不应该有任何这些。

您唯一的合法选择是 (IANAL):

  • 不要使用图书馆
  • 遵守 GPL
  • 向版权所有者索取不同的许可

请联系律师寻求专业建议。

于 2011-09-12T12:48:32.717 回答