【问题标题】:How to link an framework generated by Cocoapods in a new iOS8 framework target如何在新的 iOS8 框架目标中链接 Cocoapods 生成的框架
【发布时间】:2015-08-04 02:58:20
【问题描述】:

我正在尝试创建一个可以在许多其他 iOS 项目中使用的 iOS 框架,而这个 框架有一些依赖,我需要使用 AFNetworking 和 Mantle 库,我有 创建了新项目和包含

的podfile
platform :ios, '8.0'
use_frameworks!

pod 'Mantle', '~> 2.0'
pod 'AFNetworking', '~> 2.5'

然后我运行 pod install,在 cocoapods 生成一个工作区之后,我将新目标添加到我的项目中 这是iOS8框架,在这个框架设置“General/Linked Frameworks and Libraries 单击 + butotn 并选择 AFNetworking 并完成,在我尝试构建我的项目后,但我得到了 这个错误

ld:警告:找不到选项的目录 '-F/Users/borinschiivan/Desktop/ImodeveloperSDK/build/Debug-iphoneos/Pods' ld:找不到框架 AFNetworking clang:错误:链接器命令 退出代码 1 失败(使用 -v 查看调用)

你可以下载这个测试项目here

【问题讨论】:

    标签: ios objective-c ios8 frameworks cocoapods


    【解决方案1】:

    你不需要做这一步“在这个框架设置中这个框架设置,General/Linked Frameworks and Libraries点击+按钮并选择AFNetworking and Done”

    所有链接都将由可可豆荚自动完成。

    注意:由于您正在构建库,请阅读 pod 规范以创建可重用组件。您可以将 ImodeveloperKit 创建为 pod 框架,并将 AFNetowrking 指定为可可 pod 规范中框架的依赖项。

    编辑:使用 link_with 并指定所有目标解决了问题

    【讨论】:

    • 谢谢,我在 cocoapods 指南guides.cocoapods.org/syntax/podfile.html#link_with 上找到了这个。如果没有指定明确的目标,那么 Pods 目标将与您项目中的第一个目标链接。因此,如果您只有一个目标,则无需指定要链接的目标。这个在podfile中配置link_with 'ImodeveloperSDK', 'ImodeveloperKit'解决问题
    【解决方案2】:
    platform :ios, '8.0'
    pod "AFNetworking", "~> 2.5"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多