OS

Android Emulator上で動くプロセスのデバッグ方法

Android Emulator 上で動くプロセス(NDK、Apps等)を GDB でデバッグする方法です。

 

前提条件

  • Emulator 内に gdbserver がインストールされていること
  • Emulator を起動しているPCと、Emulator の CPU アーキテクチャが同一であること
  • Emulator のバイナリにパスが通っていること
  • Emulator と ADB が接続可能であること

 

デバッグするためのコマンドと手順

step
1
Emulator を起動

 command
$ ./emulator &

 

step
2
Emulator 上で動作しているプロセスリスト一覧を表示

 command
$ adb shell ps -A

 

step
3
一覧からデバッグしたいプロセスに gdbserver でアタッチ

 command
$ adb shell gdbserver :9999 --attach <PID> &

メモ

  • <PID> は、カッコ無しでプロセス一覧で表示された PID(数字)を入力する
  • :9999 は、ポート番号。未使用のポート番号を指定する

 

step
4
Emulaator を起動した PC 上で GDB を起動、リモートデバッグ

 command
$ gdb
(gdb) target remote :9999

 

こちらの記事もよく読まれています

  • この記事を書いた人
  • 最新記事
SANACHAN

SANACHAN

「生涯一エンジニア」を掲げ、大手グローバル企業でSE/PGとして8年勤め、キャリアアップ転職した現役のエンジニアです。世にあるメジャーな全プログラム言語(コボル除く)を自由に扱えます。一児の父。自分のため、家族のため、日々勉強してます。システムエンジニア、プログラミングに関する情報を蓄積している雑記帳です。

-OS
-, ,