Apple が提供する SMJobBless サンプルに XPC API フレームワークを含めようとしています。
しかし、これを追加します:
#include <xpc/xpc.h>
SMJobBlessHelper.c ファイルに追加すると、次のようになります。
Xpc/xpc.h: そのようなファイルまたはディレクトリはありません。
何が欠けていて、どこにあるべきか?
Apple が提供する SMJobBless サンプルに XPC API フレームワークを含めようとしています。
しかし、これを追加します:
#include <xpc/xpc.h>
SMJobBlessHelper.c ファイルに追加すると、次のようになります。
Xpc/xpc.h: そのようなファイルまたはディレクトリはありません。
何が欠けていて、どこにあるべきか?
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 サービスを作成しようとしている場合は、おそらく追加情報を得るために多くのグーグル検索を行う必要があります。それに関するAppleのドキュメントはかなり弱いです。これは私にとって役に立ちました: http://atnan.com/blog/2012/02/29/modern-privileged-helper-tools-using-smjobbless-plus-xpc 一部の plist エントリとコンパイル設定はわかりにくい.
すべてが 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 テンプレートを試しましたか?