たとえば、フレームワークをアプリ バンドルにコピーするビルド フェーズがあるとします。</p>
アプリのビルド設定で..
Runpath 検索パス @executable_path/../Frameworks
フレームワークのビルド設定で..
動的ライブラリのインストール名 @rpath/$(EXECUTABLE_PATH)
(マクロ $(EXECUTABLE_PATH) は AFramework.framework/Versions/A/AFramework のようなものに展開する必要があります)
間違えると、起動時にアプリがクラッシュするはずです。クラッシュレポートには次のように表示されるはずです
Dyld Error Message:
Library not loaded: @rpath/TestyFramework.framework/Versions/A/TestyFramework
Referenced from: /path/to/TestyApp.app/Contents/MacOS/TestyApp
Reason: image not found
これは、値がどうあるべきか、フレームワークがどこにあるべきかを理解するのに役立ちます
つまり、私の場合、完全な実行パスの検索パスは..
/path/to/TestyApp.app/Contents/MacOS/TestyApp/../Frameworks
そのため、ライブラリは次の場所にあります。
/path/to/TestyApp.app/Contents/MacOS/TestyApp/../Frameworks/TestyFramework.framework