如果要求在iPhone应用程序中遵守LGPL,我需要分发哪些文件?

Mar*_*eid 4 iphone cocoa cocoa-touch lgpl

我正在使用一个使用ZPL库的iPhone应用程序,该库是LGPL许可证.我想知道的是,如果他们为我的iPhone应用程序请求此许可证下的代码副本,我需要给予他人什么?

我被告知他们在build文件夹中,并且他们是.o文件.我在armv6和armv7文件夹中找到了一些与一个LinkFileList以及看起来像我的应用程序名称的终端应用程序.我只在我的一个源文件中直接使用该库,这是我的一个UIViewControllers.

有人可以告诉我,我是否需要将所有这些文件或特定文件发送给他们?我也被称为日志中的链接命令,但不知道它在哪里.

谢谢.

Lou*_*nco 8

我很确定没有办法遵守iPhone的标准LGPL.LGPL的一些项目已经为iPhone制定了一个特殊条款.

这是我的推理(但我不是专家或律师).LGPL的目的是,只要用户可以只更新库并且程序将使用它,您就可以制作使用开源库的商业产品.这就是大多数条款背后的原因,它们需要与图书馆建立动态联系以确保这一点.

但是,除了包含的库之外,Apple不允许iPhone应用程序中的动态链接 - 如果您尝试使用.dylib,则会被拒绝.此外,即使您可以使用dylib,最终用户也无法更新它 - 让源代码无效.

这里有更多的讨论:

哪些开源许可证与Apple的iPhone及其官方App Store兼容?

根据我所看到的,您需要使用您的源代码构建所有.o文件 - 我仍然认为这可能无法满足所有要求,因为最终用户无法将它们带到iPhone除非拥有开发者许可证.

如果您认为.o文件足够,那么您必须提供所有这些文件,而不仅仅是使用库的文件 - 他们应该拥有替换库所需的一切 - 因此对于非动态链接,他们需要应用程序的所有.o文件.

更新:我在这里提出了更多的想法

http://www.loufranco.com/blog/files/lgpl-and-the-iphone.html

我写信给GNU进行澄清,但我认为Apple的条款意味着不能使用LGPL(因为他们向任何人收取实际更新费用,并且许可证不需要行使权利)