このチュートリアルを使用して iPhone フレームワークを構築しようとしていますが、テスト アプリ (構築されたフレームワークを使用するアプリ) を構築すると、エラーが発生します。
duplicate symbol _objc_unretainedPointer in:
...
8 duplicate symbols for architecture i386
ターミナルでフレームワークのバイナリを呼び出したところ、 / /etcnm
を含む通常の実行可能ファイルのシンボルが含まれています。エラーが重複しているのも不思議ではありません。フレームワークには独自の実行可能シンボルがあり、テスト アプリにも同様です。_main
_objc_unretainedPointer
_main
私の質問は、 /etc シンボルを持たないようにするために、フレームワークの正しい Mach-O タイプは何であるべきかということです。そして、それはどのようにテスト アプリに追加されるべきでしたか?
で、チュートリアルも間違ってる?
私が試したこと: フレームワークの Mach-O Type を Dynamic Library に設定すると、_main
/etc シンボルが削除され、テスト アプリは正常にビルドされますが、テスト アプリをシミュレーターで実行するとdyld: Library not loaded
エラーが発生します。