如何使用arm-eabi-gdb调试android c/c++程序

时间:2022-07-13 16:39:42

以前尝试过用gdb调试android,但是收获不多,看到高人写的,先收藏着~~~~~~~~~~

 

原文地址:http://blog.csdn.net/sanlinux/archive/2010/07/10/5725557.aspx

 

1.获取gdbserver

prebuilt/android-arm/gdbserver

2.获取arm-eabi-gdb

prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin

3.启动emulator(即qemu虚拟机,调式linux内核时用到)

$adb remount && adb push gdbserver /system/bin

adb shell

#gdbserver 10.0.2.2:1234 /system/bin/ping

 

$telnet localhost 5554

Trying ::1...

telnet: connect to address ::1: Connection refused

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

Android Console: type 'help' for a list of commands

OK

]

KO: unknown command, try 'help'

**cmd**redir add tcp:1234:1234

OK

exit

Connection closed by foreign host.

$cd out/target/product/generic/symbols/system/bin && arm-eabi-gdb ping

 

(gdb) r

Starting program:  

Don't know how to run.  Try "help target".

(gdb) target remote localhost:1234

Remote debugging using localhost:1234

0xb0000100 in ?? ()

(gdb) l

1779 usage();

1780 if (argc > 5)

1781 usage();

1782 } else {

1783 if (argc > 10)

1784 usage();

1785 options |= F_SOURCEROUTE;

1786 }

1787 }

1788 while (argc > 0) {