2011-11-18 39 views
3

我需要将LGPL授权代码编译到专有的静态iOS库中。由于代码在静态库中使用,因此无法链接到LGPL许可库的预编译版本。LGPL/MPL和静态库

我该如何解决这个问题,如果我将它编译到我的lib中,我还需要发布什么?我显然不能释放(全部)专有来源。

我说的特定库是libical,它是根据LGPL 2.1或MPL 1.0许可的。

+4

我投票结束这个问题作为题外话,因为[许可建议是关于堆栈溢出题外话。](http://stackoverflow.com/help/on-topic)您可能能够得到帮助在[程序员堆栈交换,但**阅读他们的常见问题解答,然后再继续。](http://meta.programmers.stackexchange.com/questions/7265/when-is-a-software-licensing-question-on-主题) – durron597

回答

1

与平时IANAL此作序:

取决于它的使用LGPL的版本。如果是版本2,则在询问它之前不需要提供源代码。这就是许可证的写法。但是,当它被要求时,您需要通过一些易于访问的介质提供。

如果是LGPLv3,我的建议是找到另一个库。 GPLv3系列许可证与AppStore发行版完全不兼容。

+0

更新了我的问题。 lgpl 2.1或mpl 1.0。 –

+0

如果我需要释放源代码,这只包含与LGPL lib接口的文件是正确的? –

0

LGPL许可说,你需要提供三个位:

  1. 的LGPL在你的产品中使用的源代码。
  2. 专有代码的对象文件
  3. 一种构建源代码并将其与对象文件链接的工具,从而生成与您提交给Appstore的产品完全相同的产品。

这是繁琐而复杂的,但非常可行。