【问题标题】:How to link a framework conditionally in Xcode?如何在 Xcode 中有条件地链接框架?
【发布时间】:2016-03-21 17:14:29
【问题描述】:

我有一个包含两个项目的工作区:

  1. MySDK(生成 .framework)
  2. MyApp(使用 MySDK 并生成 .app 文件)

我想仅将 MySDK 与 MyConfig 配置相关联。 我尝试使用Other Linker Flags:

-framework MySDK

但我总是收到:

dyld:库未加载:@rpath/MySDK.framework/MySDK 引用 来自:/var/mobile/Containers/Bundle/Application/blabla/MyApp.app/MyApp 原因:找不到图片

所需的 MySDK.framework 文件位于 Build Products 文件夹中:我尝试将 $($CONFIGURATION_BUILD_DIR) 添加到(无处不在)Runpath Search Paths、Library Search Path 以及我能想到的任何地方。我仍然收到 dyld 错误。

互联网上有很多关于这个的讨论,但大多数都是旧的,因此我决定再试一次。

【问题讨论】:

    标签: xcode frameworks dyld


    【解决方案1】:

    因为 $CONFIGURATION_BUILD_DIR 在您的设备上不可用,您必须在 MyApp.app 中复制 MySDK.framework,参见 Copying Files While Building a Product 并选择 Frameworks 作为 MySDK.framework 的目标。

    同时确保您的应用目标的运行路径搜索路径 (LD_RUNPATH_SEARCH_PATHS) 构建设置包含@executable_path/Frameworks。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-11
      • 2011-09-22
      • 2021-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多