【问题标题】:How to combine object files (.o) to create static library (.a) for iOS?如何结合目标文件 (.o) 为 iOS 创建静态库 (.a)?
【发布时间】:2023-03-21 07:15:01
【问题描述】:

我已经编译了一个库并且有目标文件(.o)。现在我想使用 ar 将它们组合到一个静态库中。我能够做到这一点,但是当我在 iOS 项目中添加该文件时,它说库是归档类型,而链接架构是 arm7。我该如何解决这个问题?

已解决

ar -crs libstatic.a *.o 以前我使用的是 iOS SDK 中的 ar,我猜这就是它失败的原因。

【问题讨论】:

    标签: c ios static


    【解决方案1】:
    ar -rcs libexample.a *.o
    

    用开关链接库:

     -lexample
    

    【讨论】:

      【解决方案2】:

      到目前为止,我找到的关于该主题的最佳资源在这里:

      http://sgleadow.github.com/blog/2011/10/28/universal-static-libraries-and-frameworks-for-ios/

      这是一个漫长的过程 - 但每个步骤对于让它按预期工作都是必不可少的。

      【讨论】:

      • 谢谢,但这并不是我想要的。
      • 对不起 - 但最终它是:)。如果您正在为单一架构创建静态库 - 这是因为您的构建设置未正确配置。您需要退后一步,根据这些指南设置您的项目,您的问题就会消失。
      • 我没有任何 XCode 项目开始。它是一个我正在尝试编译的 C 库,并且本质上它不会生成 lib.a,而 lib.a 通常是库在制作它们时生成的。当然,我不知道如何在 configure 或 Makefile 中进行更改以强制它生成静态库。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-07
      • 2013-07-09
      • 1970-01-01
      • 1970-01-01
      • 2017-07-05
      相关资源
      最近更新 更多