0

正常に動作するアプリケーションを 1 つ開発していますが、(ドラッグ & ドロップを使用して) NinjaMyApp フォルダーを含めようとすると、シンボルの重複エラーが発生します。

ld: duplicate symbol _OBJC_CLASS_$_InfoView in /Users/xyzpath/NinjaMyApp-v0.32/NinjaMyApp-v0.32/4mnow-1.32/4mnowLaunchPad/4mnowLaunchPad.a(InfoView.o) and /Users/xyzpath/NinjaMyApp-v0.32/NinjaMyApp-v0.32/4mnow-1.32/4mnowBasic/4mnowBasic.a(InfoView.o) for architecture i386

前もって感謝します。

4

4 に答える 4

2

あなたが使用している静的ライブラリについては何も知りませんが、そのうちの 2 つのクラスの名前が重複しているようです: LaunchPad.a と Basic.a。おそらく、それらは一緒に使用することを意図していませんか?

于 2012-09-18T12:43:28.830 に答える
1

.m ファイルを #include または #import しないでください。これらの .m ファイルをターゲットに追加するだけです。ビルド フェーズ。.h ファイルをビルド フェーズに追加しないでください。ただし、これらの関数が必要な場合は、#import .h ファイルを追加してください。

コンパイラは、それが「情報のみの」ヘッダー ファイルであること、および .m ファイルをコンパイルしてそれらすべてを 1 つの実行可能ファイルに入れるときに関数の本体が使用可能になることを認識しています。

于 2012-09-29T05:58:42.000 に答える
0

クラス InfoView を 2 回含めているようです。プロジェクトで重複ファイルを検索して削除します。プロジェクト ナビゲーションの検索バーで名前を検索することで実行できます。

Xcode プロジェクト ナビゲーション検索バー

于 2012-09-18T12:44:37.303 に答える
0

.h の代わりに InfoView.m をインポートしたようです

于 2012-09-18T12:44:48.940 に答える