私のアプリケーションにSDLとSDL_ttfフレームワークを追加しようとしています。通常の方法で行っています:「リンクライブラリとバイナリ」セクションに追加し、コピーファイルフェーズを追加しましたそれらをFrameworksディレクトリにコピーします。これは、組み込みフレームワークを持つアプリケーションバンドルを作成します。私は、アプリケーションを実行するときしかし、私はこのエラーを取得する:アプリはそのバンドルに埋め込まれているにもかかわらず、フレームワークを見つけることができるようにMac Appバンドルにフレームワークを埋め込む
dyld: Library not loaded: @rpath/SDL_ttf.framework/Versions/A/SDL_ttf Referenced from: /Users/matthew.davies/Library/Developer/Xcode/DerivedData/MacHub-ambfqujqxbxyiqapaoctvsucpdeu/Build/Products/Release/MacHub.app/Contents/MacOS/MacHub Reason: image not found
は私が行うには他に何かわかりません。
どのようなアイデアをお願いしますか?
Appleが推奨する方法を構築すると、最初に '@loader_path /../ Frameworks/SDL.framework'を探してしまうので、検索パスには必要ないでしょう。これは、あなたのアプリが間違ったバージョンのフレームワークにリンクされることを保証しないので、より安全なソリューションです。彼らが推薦するようなことをやっていなければ、すべての種類の低レベルの詳細を学ばなければなりません。 (おそらくあなたが本当に望むのは 'install_name_tool'ですが、あらかじめ知っていなければあなた自身のためにそれを見つけ出す可能性は低いです...) – abarnert
本当の問題は、Appleが非常に簡単な「使い始め」フレームワークの低レベルの詳細と、それがどのように機能するかについての詳細はありません。 – abarnert
私のプロジェクトでは、実行可能ファイルは/ Library/FrameworksとアプリケーションのContents/Frameworksフレームワークの両方を取り上げていました。ライブラリの選択が未定義であることが警告されました(実際には、この構成ではSDL_Mixerは機能しませんでした)。このヒントもこの問題を解決します。 – Justin