3

最初に、この質問を言いたいと思います: XCode でアプリケーションとフレームワークをバンドルする

そしてこの質問: OSX:.frameworkのパスを変更する

どちらも私をこの時点に導くのに非常に役立ちましたが、まだ十分ではありません.

そのため、前の 2 つの質問の両方の元のポスターと同様に、アプリ バンドル内にフレームワークを埋め込もうとしています。むしろ、問題は、複数のフレームワークを自分のアプリ バンドルに埋め込もうとしているということです。そのうちのいくつかは相互に依存しています。私のアプリケーションはフレームワークを正常に見つけることができますが(フレームワークがどこにあるかを知るためにインストールディレクトリを変更しました)、相互に参照するものはまだ通常の ~/Library にインストールされるフレームワークを探していると思います/Frameworks ディレクトリ。

これは、アプリを実行しようとしたときに得られる出力です。

ダイルド エラー メッセージ:

ライブラリがロードされていません: @rpath/SDL.framework/Versions/A/SDL

参照元: /Users/Daly/Library/Developer/Xcode/DerivedData/Coin_Checkers_2-cibyiolfgsmcicdrcfxufftxzbsk/Build/Products/Debug/Coin Checkers 2.app/Contents/MacOS/../Frameworks/SDL_image.framework/SDL_image

理由: 画像が見つかりません

バイナリ イメージ: 0x7fff5fc00000 - 0x7fff5fc3be0f dyld 132.1 (???) <29DECB19-0193-2575-D838-CF743F0400B2> /usr/lib/dyld

正しくロードされているように思えますSDL_imageが、SDL_image が参照すると失敗しますSDL。SDL_image フレームワークを組み込み SDL フレームワークの正しい場所に誘導するために使用できる同様のトリックはありますか?

本当にありがとう!

4

1 に答える 1

2

ああ気にしません。サイドの関連セクションに表示されるまで、この質問を見たことがありませんでした: Mac App Bundle へのフレームワークの埋め込み

どうやら、実行パスの検索パスを設定するだけで、すべての問題が解決しました。フレームワークの検索パスを設定しようとしましたが、それは役に立たなかったようです。

実際、フレームワークを再ダウンロードして、install_name_tool手順が必要かどうかを確認しましたが、そうではないようです。彼らはそれなしで働きました。面白い。

于 2012-10-25T02:35:38.290 に答える