2012-03-27 5 views
0

アプリケーションを実行しようとすると、次のエラーが発生します。ソースコードにエラーはありません。アプリケーションを実行しようとすると、次のエラーが発生します。ソースコードにエラーはありません

     Undefined symbols: 
    "__Block_object_dispose", referenced from: 
     ___destroy_helper_block_2 in myprojectAppDelegate.o 
     ___destroy_helper_block_1 in myprojectAppDelegate.o 

    "__NSConcreteStackBlock", referenced from: 
     __NSConcreteStackBlock$non_lazy_ptr in myprojectAppDelegate.o 
    (maybe you meant: __NSConcreteStackBlock$non_lazy_ptr) 

    "__Block_object_assign", referenced from: 
     ___copy_helper_block_2 in myprojectAppDelegate.o 
     ___copy_helper_block_1 in myprojectAppDelegate.o 

ld: symbol(s) not found 
collect2: ld returned 1 exit status 

答えて

0

問題はXcodeバージョンで発生しました。このプロジェクトはXcode version4.2でビルドされており、Xcode3.2上で実行しようとしていました。後で私はXcodeを更新し、最新のものに変更しました。

0

いくつか不足しています。あなたが含まなかった別のソースファイルですか?メソッド "destroy_helper_block_1"を見て、あなたが持っていないものがそこにあるのを見てください。いくつかのケースが間違っているか、あなたが含まれていないフレームワークを呼び出している可能性があります。リンカはすべてをまとめようとしていますが、あなたのソースコードは存在しないものを必要としています。

+0

ソースファイルではなくフレームワークが不足していると思われます(後者はコンパイルエラーの原因となります)。 –

+0

インクルードライブラリが不足している可能性もあります。 Obj-Cは、存在しないメソッドを呼び出せるため、コンパイルエラーが常に発生するとは限りません(少なくとも、Xcodeのデフォルトは警告として設定されています)。ソースコントロールされたプロジェクトに新しいファイルを追加するときに、プロジェクトに追加するだけで、ソースコントロールにチェックインするのを忘れることがあります。 –

関連する問題