【问题标题】:What files do I need to distribute if requested to comply with LGPL in an iPhone app? [closed]如果要求在 iPhone 应用程序中遵守 LGPL,我需要分发哪些文件? [关闭]
【发布时间】:2011-03-19 20:27:10
【问题描述】:

我正在开发一个 iPhone 应用程序,该应用程序使用 LGPL 许可下的 Zbar 库。我想知道的是,如果有人要求我的 iPhone 应用程序在此许可下的代码副本,我需要向他们提供什么?

有人告诉我它们在 build 文件夹中,而且它们是 .o 文件。我在 armv6 和 armv7 文件夹中找到了其中的一些,还有一个 LinkFileList 以及一个看起来像我的应用名称的终端应用。我只在我的一个源文件(我的 UIViewController 之一)中直接使用该库。

谁能告诉我,我需要将所有这些文件发送给他们还是只发送特定文件?我还在日志中提到了一个链接命令,但不知道这是哪里。

谢谢。

【问题讨论】:

  • 我投票决定将此问题作为离题结束,因为它是关于许可或法律问题,而不是编程或软件开发。 See here 了解详情,help center 了解更多信息。

标签: iphone cocoa cocoa-touch lgpl


【解决方案1】:

我很确定 iPhone 无法遵守标准 LGPL。一些具有 LGPL 的项目一直在为 iPhone 制定特殊条款。

这是我的推理(但我不是专家或律师)。 LGPL 的目的是您可以制作使用开源库的商业产品,只要用户可以仅更新该库并且您的程序将使用它。这就是大多数子句背后的原因,它们需要动态链接到库以确保这一点。

但是,Apple 不允许在 iPhone 应用程序中进行动态链接,但包含的库除外——如果您尝试使用 .dylib,您将被拒绝。此外,即使您可以使用 dylib,最终用户也无法更新它——拥有源代码对他们没有好处。

这里有更多讨论:

Which open source licenses are compatible with the Apple's iPhone and its official App Store ?

根据我所见,您需要使从您的源代码构建的所有 .o 文件都可用 - 我仍然认为这可能无法满足所有要求,因为最终用户无法除非他们拥有开发者许可证,否则让他们使用 iPhone。

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

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

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

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

【讨论】:

  • 用户她自己无法更新应用程序内的LGPL库,这不是收费。不过要投赞成票。
  • 即使我 GPL 整个应用程序并将其提供给您,您也无法在不支付 Apple 费用的情况下构建和使用您的库版本。 LPGL 不需要实时更新(您可以提供 .o 文件并让用户静态重新链接)——但行使权利不需要任何费用。
猜你喜欢
  • 2013-01-16
  • 2013-11-13
  • 1970-01-01
  • 2020-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-09
相关资源
最近更新 更多