使用无效位置的MailCore CFNetwork.framework依赖关系

时间:2012-11-08 04:40:05

标签: objective-c mailcore

我是Xcode和Objective C开发的新手,我正在尝试导入github MailCore InboxListener example适用于Mac OSX环境的Xcode项目。我按照MailCore's website中的Mac OSX指令进行了项目构建,但没有运行。 MailCore似乎依赖于/System/Library/Frameworks/CFNetwork.framework,它在我的Mac OS X 10.7.5上的/ System / Library / Frameworks /目录中不存在。

CFNetwork.framework确实存在于/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks中,但为什么MailCore不知道在哪里找到它?如何更改MailCore使用的位置?

我尝试在Build Phases中链接CoreServices.framework和CFNetwork.framework,与二进制文件链接但没有成功。相同的运行时错误

运行时输出:

dyld: Library not loaded: /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
  Referenced from: /Users/cgray/Library/Developer/Xcode/DerivedData/InboxLister-hjoeknampqddvifxyoqwhozaricj/Build/Products/Debug/MailCore.framework/Versions/A/MailCore
  Reason: image not found
(lldb)

enter image description here

1 个答案:

答案 0 :(得分:2)

这对我来说是一个脑筋急转弯!

我决定在项目的任何项目和目标,Mailcore和Libetpan库中设置 SDK 10.7 。 然后在Project导航器中选择libetpan项目并检查:

  1. 打开 CoreService.framework 并检查是否有CFNetwork.framework(如下所示)。如果它不存在,则您的代码不能包含SDK 10.7,其中CFNetwork属于CoreService伞形框架。
  2. 选择“静态libetpan ”目标并检查“Link Binary With Libraries”,您应该找到CoreService.framework。如果没有添加它(您也可以从项目导航器中拖放)
  3. 清洁和构建,它应该工作!

    enter image description here