【问题标题】:Is there a way to include an armv6 lib in an armv7 project?有没有办法在 armv7 项目中包含 armv6 库?
【发布时间】:2023-03-04 09:03:01
【问题描述】:

我在 xcode 中有一个 iPhone 项目,需要针对 armv7 架构进行编译。我最近需要包含一个我只为 armv6 编译的库。

有没有办法在 armv7 项目中包含 armv6 库?

补充说明:

  • 该项目确实必须在 armv7 中编译。
  • 我无法将 armv6 库重新编译为 armv7(封闭源代码)。

【问题讨论】:

    标签: xcode xcode4 xcodebuild


    【解决方案1】:

    恐怕您的问题的答案是。您可以在您的项目中包含为 armv6 架构编译的静态库,但在为 armv7 构建时它永远不会正确链接。唯一的解决方案似乎是获取库源并自己为 armv7 构建它,但我认为这在你的情况下是不可能的。我最近遇到了类似的问题,我要求图书馆所有者按照我需要的架构构建它,他们做到了。祝你好运。

    【讨论】:

      【解决方案2】:

      我不知道这是否可行,但它可能会。当人们构建通用框架供他人使用时,他们分别构建 i386 和 armv6/7 库,然后使用 lipo 将它们组合起来。我想知道您是否可以分别构建一个 armv6 库和一个 armv7 库,然后使用相同的技术。 IE。 lipo 命令。

      【讨论】:

        【解决方案3】:

        这是可能的,但仅限于某些可控的情况下。

        1. 如果您无法访问源代码,是否有包含 armv7 的库的更新版本?

        2. 请求来源或开发者添加对 armv7 的支持。

        3. 如果所有其他方法都失败了,有没有更好的方法来做到这一点而不使用这个旧的(并且显然不受支持的)库?

        【讨论】:

        • 我还是说不可能。您提到的所有要点都没有真正满足 rahzark 的要求,即将为 armv6 架构构建的库与为 armv7 构建的项目链接。
        • @lawicko 是的,你是对的。如果其中任何一点是可能的,那将是完美的,但不幸的是,我无法做到:(无论如何,谢谢大家对此的确认!
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-01
        • 1970-01-01
        • 2017-06-02
        • 1970-01-01
        • 1970-01-01
        • 2020-12-03
        相关资源
        最近更新 更多