Xcode は、「検索パス」リストを使用してヘッダー ファイル (.h) を見つけようとします。このリストには複数の検索パスを含めることができます。たとえば#import <a.h>
、プログラムに検索パスがあり、検索パス リストにパス "/asd" と "/qwe" がある場合、"/asd/" としてヘッダーを見つけようとします。 ah" または "/qwe/ah" (両方を試します)。
Xcode プロジェクトのビルド設定でカスタム パスを追加できます。「検索パス」セクションがあり、そこに「ヘッダー検索パス」があります。ライブラリがプロジェクト内にある場合、パスに変数を使用すると便利です。これは、次$(SRCPATH)
のようにプロジェクトのルート フォルダーに展開されます。
としてインポートし<somelib/somefile.h>
、「ヘッダー検索パス」のパスに「/some_path/include」のように「include」で終わるものがある場合、ヘッダーは「/some_path/include/somelib/somefile.h」にある必要があることに注意してください。多くの場合、ヘッダーファイルは「include/somelib/」内ではなく「include/」内に配置されるため、これは正しくない場合があります。
これを解決する 1 つの方法は、ライブラリの "include" フォルダーを指すシンボリック リンクをカスタム名で作成し、そのシンボリック リンクの親ディレクトリをヘッダー パスに追加することです。
たとえば、空のディレクトリ「libs/include/」を作成し、ライブラリ ファイルを「libs/dist/libARDiscovery/.../include」に配置した場合、シンボリック リンク「libs/include/libARDiscovery」を作成できます。 "lib/dist/libARDiscovery/.../include" を指し、"$(SRCROOT)/libs/include" をヘッダー検索パスに追加します。