【问题标题】:iOS static library contains no symbolsiOS 静态库不包含符号
【发布时间】:2018-12-16 16:05:06
【问题描述】:

我为 iOS 制作了一个静态库,当我尝试在我的 Unity 构建中使用它时,我得到了这样的错误。

Undefined symbols for architecture arm64:
  "_pk_addTest", referenced from:
  _PocketKaldiNative_pk_addTest_m19215872 in Bulk_Assembly-CSharp_0.o
 (maybe you meant: _PocketKaldiNative_pk_addTest_m19215872)

我在静态库上使用了 lipo -info 来确认它构建了一个 arm64 库。 然后我使用 ar -t 确认它包含 .o 文件。该库也有 385MB。 最后,这是奇怪的部分,我使用了 nm -debug-syms 并没有得到任何回报。我还尝试了 -extern-only、-demangle、-undefined-only,但仍然没有。

我如何错误地构建这个 .a 以使其没有符号?

【问题讨论】:

    标签: ios xcode static-libraries


    【解决方案1】:

    根据我的经验,nm 没有显示启用位码编译的静态库的任何符号,这是当今 Xcode 的默认设置。如果您将其关闭(将构建设置中的“启用位码”选项设置为“否”),那么您应该能够看到符号表。

    【讨论】:

      猜你喜欢
      • 2012-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多