我很确定 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(因为他们会向任何人收取实际执行更新的费用,并且许可不需要收取任何费用来行使权利)