【问题标题】:How to merge static libraries for iOS?如何合并 iOS 的静态库?
【发布时间】:2018-08-09 22:30:44
【问题描述】:

澄清一下,我并不是说在这里将不同架构的静态库合并为一个。

我有一个依赖于其他几个静态库的静态库。问题是我不希望我们的客户费心包含所有这些 .a 文件,而是只包含一个包含他们需要的所有对象和代码。

那么我怎样才能将几个静态库合并为一个呢?或者当我通过 XCode 构建静态库时是否可以包含这些静态库?

【问题讨论】:

标签: ios objective-c xcode


【解决方案1】:

您可以为此使用libtool 命令行实用程序。语法如下:

假设目录libs 包含所有静态库,您想从中创建libfatstatic.a。

libtool -static -o libfatstatic.a libs/*.a

注意:如果你没有 libtool.您可以使用 brew 安装相同的:brew install libtool

【讨论】:

  • 合并这些文件时,我收到一堆警告,说对于 xxx 架构,xxx.a 中没有符号。并且导入合并的静态库后,编译时没有错误但运行时错误..这可能是什么原因?
  • 因此,如果您在不合并的情况下包含这些文件,您不会收到任何错误?
猜你喜欢
  • 2012-06-19
  • 2011-12-31
  • 2012-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多