46

私はeclipseに2つのプロジェクトを持っています。1つはsoを生成し、もう1つはそれを使用するAndroidアプリケーションです。このガイドを使用してネイティブコードをデバッグしようとしています。

  1. アプリケーションをデバッグ可能に設定しました
  2. アプリケーションをデバッグモードで開始しました
  3. ndk-gdbを実行します

ネイティブデバッガーを実行すると、次のようになります。

Error in final launch sequence
Failed to execute MI command:
-gdb-set target-async off
Error message from debugger back end:
Cannot change this setting while the inferior is running.
Cannot change this setting while the inferior is running.
4

2 に答える 2

1

このリンクはこちらのリンクで見つかりました。実際の著者はmarc.

ガイドに従ってインストールしたので、CDT.

CDTが起動すると、ブレークポイントを に設定しようとするmainため、プログラムの開始時に実行が中断されます。ただし、ターゲットは既に実行されているため、ブレークポイントを設定できず、すべてが失敗します。

そのブレークポイントを設定しないようにローンチに指示し、ターゲットに接続させることができます。Run->Debug Configurations... に移動し、起動構成を見つけます。次に、[スタートアップ] サブタブを選択し、下にスクロールして、[ランタイム オプション] サブセクションの [ブレークポイントを設定] のチェックを外します。

****これはパフォーマンスが低下する問題であるため、使用している OS にも関連している可能性があります。**** したがって、パッチが必要になる場合があります。

また、.gdbinit ファイルから「target」コマンドを削除すると、Eclipse プラグインが既にこのコマンドを発行しているため、役立つ場合があります。

何も機能しない場合は、最終的に gdb コンパイルの問題であるため、デバッガーの変更を探すことができます。

私の答えは純粋に研究開発に基づいています。

于 2016-09-06T14:59:44.273 に答える