【问题标题】:Xcode force_load not working for simulator buildXcode force_load 不适用于模拟器构建
【发布时间】:2011-06-23 22:45:33
【问题描述】:

我将 Xcode 4 和 LLVM 2 用于其中包含两个项目(A 和 B)的工作区。主项目 (A) 链接到构建静态库的另一个项目 (B) 的二进制文件。

项目 B 包含类别,因此为了使其正确链接到 A,我设置了 ObjC 和 all_load 链接器标志。然而,这引起了问题,因为我使用的一些库具有不应加载的符号,因此我尝试转而专门在项目 B 的库文件上使用 force_load。

-force_load $(TARGET_BUILD_DIR)/libB.a

这可以让设备在设备上运行,但在模拟器中应用程序崩溃,因为项目 B 中的类别没有被链接。

知道为什么 force_load 在设备和模拟器上的工作方式不同吗?

如果您需要更多详细信息,请告诉我。

【问题讨论】:

    标签: objective-c xcode llvm


    【解决方案1】:

    试试-Wl,-force_load,$(TARGET_BUILD_DIR)/libB.a; IIRC,Apple LLVM Compiler 2.0 不支持 -force-load 是一个已知问题。

    【讨论】:

      猜你喜欢
      • 2017-03-15
      • 2019-03-04
      • 2016-01-21
      • 2022-11-28
      • 1970-01-01
      • 2014-04-25
      • 2021-01-12
      • 2017-03-24
      • 2014-11-22
      相关资源
      最近更新 更多