0

Objective-C アプリのフレームワークを構築しました。私はそれが機能する最小限のプログラムでテストしました。私は今、実際のアプリでそれを使用しようとしていました. 残念ながら、リンカーは私のクラスの定義を見つけることができません。=(

実行しようとすると、次のエラー メッセージが表示されます。

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_ClassInMyFramework", referenced from:
    objc-class-ref in libMyLib.a(MyLib.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

依存関係:
App -> libMyLib.a -> MyFramework.framework

このエラー メッセージに対する通常の提案は、フレームワークを「Link Binary with Library」ビルド フェーズに追加することです...これが発生したことを保証できます ;)

私の最初の考えは、ビルド設定に問題があり、このリンクエラーが発生した可能性があるということです。考え直して、プロジェクトのセットアップに関係している可能性があります。フレームワークを '.a' ライブラリ ファイルに静的にリンクすることは可能ですか?

更新:
フレームワークをアプリにリンクしましたが、現在は機能しています。しかし、私はこれをきれいな解決策とは考えていません。ヘルプはまだ評価されています。=)

4

1 に答える 1