【问题标题】:Cocoa/Cocoa.h Not Found (Error)Cocoa/Cocoa.h 未找到(错误)
【发布时间】:2011-09-25 17:26:25
【问题描述】:

我对此进行了大量研究,只发现有人在 iPhone 上构建可可应用程序时抱怨此错误。

我最近获取了 Mac 版 Colloquy 的源代码并完成了它要求的所有操作,但('Cocoa/Cocoa.h' 文件未找到)

这是#import 的全部代码。

#define ENABLE(FEATURE) (defined(ENABLE_##FEATURE) && ENABLE_##FEATURE)
#define SYSTEM(NAME) (defined(SYSTEM_##NAME) && SYSTEM_##NAME)

#define LIKELY(x) __builtin_expect((x) ? 1 : 0, 1)
#define UNLIKELY(x) __builtin_expect((x) ? 1 : 0, 0)

#define SYSTEM_MAC 1

#ifdef __OBJC__

#ifdef COMMAND_LINE_UTILITY
#import <Foundation/Foundation.h>
#else
#import <Cocoa/Cocoa.h>
#endif

#import "NSCharacterSetAdditions.h"
#import "NSDataAdditions.h"
#import "NSDictionaryAdditions.h"
#import "NSMethodSignatureAdditions.h"
#import "NSNotificationAdditions.h"
#import "NSObjectAdditions.h"
#import "NSScannerAdditions.h"
#import "NSStringAdditions.h"
#endif

#import "MVUtilities.h"

#if !defined(__unsafe_unretained)
#define objc_unretainedObject(object) (id)(object)
#endif

我已重新链接框架,因此无需询问我是否尝试过。 :)

我们将不胜感激:D

【问题讨论】:

    标签: objective-c cocoa


    【解决方案1】:

    我遇到了同样的问题,我已经安装了 XCode 命令行工具,它开始工作了。

    【讨论】:

      【解决方案2】:

      您是否正在尝试为 iOS 构建 Colloquy?如果不是,请跳过第一部分。


      您的问题是您正在导入 Cocoa/Cocoa.h。这确实是两个问题:

      1. Cocoa 是Mac 开发框架。它在 iOS 上不存在。
      2. iOS 没有伞式框架。没有与 Mac OS X 的 Cocoa.framework 对应的 CocoaTouch.framework;对于 iOS,您需要专门导入每个框架的标头,并专门链接到每个框架。

      因此,在您将 SDK 从 Mac SDK 更改为 iOS SDK 后,取出 Cocoa.framework 和 Cocoa.h 的导入,添加 Foundation 和 UIKit(以及您需要的任何其他框架)并导入它们的标头。


      特别是 Colloquy 的情况

      Colloquy 主干中有两个项目:一个用于 Mac OS X,另一个用于 iOS。确保您正在打开并尝试构建正确的项目。

      如果您有意尝试构建 Mac 项目,而这就是失败的原因,请确保您已安装必要的 Mac SDK。检查项目的构建设置以查看他们的项目使用哪一个,然后从 Xcode 磁盘映像安装它。 (如果你通过 MAS 安装了 Xcode,我不知道你需要做什么,如果有的话。)

      【讨论】:

        猜你喜欢
        • 2013-03-27
        • 2012-05-18
        • 2011-05-14
        • 2016-01-06
        • 1970-01-01
        • 1970-01-01
        • 2019-01-08
        • 2012-05-26
        • 2018-11-13
        相关资源
        最近更新 更多