<Cocoa/Cocoa.h>地点

问题描述 投票:0回答:4

我是 Mac OS X 开发新手。在 XCode/Cocoa 开发环境中,每个 Objective-C 项目都以
开始

#import <Cocoa/Cocoa.h>

它工作正常,但我对 Cocoa.h 文件位置感到困惑。我的文件系统上的 Cocoa 文件夹中没有 Cocoa.h 文件。我尝试“查找/Cocoa/Cocoa.h”和“定位Cocoa/Cocoa.h”什么也没找到。
谁能告诉我编译器如何以及在哪里找到上面 #import 语句中的 Cocoa.h 标头。

谢谢, 恢复微软瘾君子

cocoa xcode search header
4个回答
7
投票

Cocoa/
指的是
/System/Library/Frameworks/Cocoa.framework/Headers/
文件夹。 如果您检查您的项目,在“框架”下您将看到包含的框架,并且按住 cntrl 键单击“在查找器中显示”将会有所帮助。


3
投票

我终于在Xcode构建设置参考部分标题映射构建设置中找到了答案。
结果 XCode 在幕后“神奇地”将标头映射到 .hmap 文件中存储信息的路径,以将 .hmap 文件传递给 gcc(编译器)。
环境变量 HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES 必须设置为在 #import 语句中使用 Cocoa/Cocoa.h 语法。
不,Finder 不显示 .hmap 文件 - 使用终端命令来获取它们。


0
投票

Spotlight 似乎也能找到我在系统上查找过的任何头文件。


0
投票

2024年更新

过去几年情况发生了很大变化。特别是标头不再随默认安装一起提供,例如当未安装 Xcode 时。

首先,您需要安装 Xcode 和命令行工具,然后找到

sdk-path
,如下所示:

xcrun --sdk macosx --show-sdk-path

这里的计算结果为:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk

从那一点开始,您

cd
System/Library/Frameworks/Cocoa.framework/Headers
,导致整个路径为
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/System/Library/Frameworks/Cocoa.framework/Headers

HTH,

拉尔斯

© www.soinside.com 2019 - 2024. All rights reserved.