1

我正在尝试在苹果提供的 SMJobBless 示例中包含 XPC api 框架:

https://developer.apple.com/librarY/mac/samplecode/SMJobBless/Introduction/Intro.html#//apple_ref/doc/uid/DTS40010071-Intro-DontLinkElementID_2

但是添加这个:

#include <xpc/xpc.h>

到 SMJobBlessHelper.c 文件给了我这个:

Xpc/xpc.h:没有这样的文件或目录。

缺少什么,应该在哪里?

4

2 回答 2

1

xpc.h 文件位于SDK ROOT/usr/include/xpc/对我来说是

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/xpc

我猜您的基本 SDK 配置不正确。您是否选择了有效的 SDK?您可能想要更改它,然后再将其更改回来。有时 Xcode 可能对此很奇怪。

我刚刚下载了该示例代码并将包含内容放入 SMJobBlessHelper.c 文件中,并且它编译没有问题(在 10.9.3,Xcode 5.1.1 上)。

请注意,您不必包含单独的 XPC 框架,它只是标准系统库的一部分。

此外,如果您尝试为特权操作编写 XPC 服务,您可能需要进行大量谷歌搜索以获取更多信息。苹果在这方面的文档非常薄弱。这对我很有帮助:http ://atnan.com/blog/2012/02/29/modern-privileged-helper-tools-using-smjobbless-plus-xpc 一些 plist 条目和编译设置很难弄清楚.

于 2014-06-04T21:30:38.347 回答
0

当有 XPC 时,一切都可以追溯到过去......只要看看我的机器,我就可以看到它:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/xpc/xpc.h /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX .platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/xpc/xpc.h /EMI/Xcode/sdks/MacOSX10.8.sdk/usr/include/xpc/xpc.h

你包括吗?

你试过 Xcode 自带的 XPC 模板吗?

于 2015-04-11T17:39:21.887 回答