2011-01-21 6 views
2

は最近、XCodeの上の私のデバッガが正常に動作を停止し、そしてそれは、このエラーを与える:XCodeの - 「このフレームの内側の前のフレームは(GDBはこのフレームを過ぎてくつろぐことができませんでした)」

Previous frame inner to this frame (gdb could not unwind past this frame)

私はしましたそれでここにある別のスレッドを通って、欠けているシンボルについて話していました。私はシンボルディレクトリを削除し、iPodからそれらを再取得させることで修正しました。シンボルの欠落に関するログにエラーは見られないので、修正されているようです。

私はapplicationDidFinishLaunchingにブレークポイントを配置することができ、私のコードはいくつかあります。だから私はそれが私のコードで間違っていると思っている。しかし、私はこれを引き起こす可能性のあるわずかな手がかりを持っていません。

1箇所私はブレークポイントを置くことができません。これは、オブジェクトのステップ関数の中にあります。これはエンジンごとに呼び出されます。

ETA:私はcocos2d関数の中に入ることができませんでした。 CCNode私はGDBのエラーを取得せずに「にステップ」することはできません

[self addChild:child z:z tag:child.tag];

を呼び出す行で。私のコードからの呼び出しは普通のようです:

Shot* tempshot = [[Shot node] retain]; 
[tempshot setPosition: CGPointMake(e_laneRX, m_laneYArr[spriteid - 103])]; 
tempshot.m_leftSide = false; 
[self addChild: tempshot z:3]; 

自己はCCLayerの継承者です。

+0

あなたはこの質問のような同様の解決策を持っています: http://stackoverflow.com/q/3285493/751932 xcode 4.2以降でgccは存在しません 新しい解決策はありますか? – Speakus

+0

私はしばらくの間iPhoneでプログラミングしていないので、この問題をもう一度やり直すことはありません。 – Almo

答えて

2

わかりました。私はcocos2dプロジェクトをクロスリンクしているので、ファイルをゲームプロジェクトにコピーする必要はありません。ゲームの途中でCocosのバージョンをアップグレードする方がはるかに簡単です。

デバッグバージョンがLLVM GCC 4.2を使用するように設定されていて、リリースでGCC 4.2が使用されていた場合は、ココスプロジェクト(これは自分の誤りであるか、そうでないかはわかりません)が判明しました。 LLVMは何らかの理由でデバッガを破壊します。だから、GCC 4.2に切り替えて、ココスプロジェクトのデバッグをして、すべてを修正しました。

0

この問題も発生しました。デバッガをGDBからLLDBに変更することで修正しました。

関連する問題