【GDB】gdbserver的使用,远程调试开发板
2018-01-04 15:03
330 查看
0、将gdbserver拷贝到目标板子上
注:gdbserver在交叉编译工具目录/debug-root/usr/bin下
可用file命令查看
------------------------------------------------------------
$ file gdbserver
gdbserver: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, for GNU/Linux 2.6.31, not stripped
-------------------------------------------------------------
1、编译可执行程序,需要添加调试选项 -g
2、将可执行程序拷贝至目标板
3、在【目标板】上使用gdbserver运行可执行程序
格式:./gdbserver 目标板ip:端口号 app,输出信息如下
------------------------------------------------------------
Process dcu_app created; pid = 1860
Listening on port 1234
------------------------------------------------------------
4、在【PC端】上运行gdb
4.1 使用gdb 运行可执行程序
$ arm-fsl-linux-gnueabi-gdb app
4.2 出现(gdb)后输入远程调试命令,格式如下
(gdb) target remote 目标板ip:端口号
4.3 出现(gdb)后输入c远程启动程序,如下
(gdb) c
4.4 出现段错误后,使用bt来打印调试栈中的信息,如下
-------------------------------------------------------------------------
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1828]
handler () at pthread_getdata.c:331
331 pthread_getdata.c: 没有那个文件或目录.
in pthread_getdata.c
(gdb) bt
#0 handler () at pthread_getdata.c:331
#1 0x0000d8b8 in pthread_getdata (arg=<value optimized out>) at pthread_getdata.c:991
#2 0x76f41b10 in ?? ()
#3 0x76f41b10 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
----------------------------------------------------------------------------
4.5 输入q,选择y退出远程调试
注:gdbserver在交叉编译工具目录/debug-root/usr/bin下
可用file命令查看
------------------------------------------------------------
$ file gdbserver
gdbserver: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, for GNU/Linux 2.6.31, not stripped
-------------------------------------------------------------
1、编译可执行程序,需要添加调试选项 -g
2、将可执行程序拷贝至目标板
3、在【目标板】上使用gdbserver运行可执行程序
格式:./gdbserver 目标板ip:端口号 app,输出信息如下
------------------------------------------------------------
Process dcu_app created; pid = 1860
Listening on port 1234
------------------------------------------------------------
4、在【PC端】上运行gdb
4.1 使用gdb 运行可执行程序
$ arm-fsl-linux-gnueabi-gdb app
4.2 出现(gdb)后输入远程调试命令,格式如下
(gdb) target remote 目标板ip:端口号
4.3 出现(gdb)后输入c远程启动程序,如下
(gdb) c
4.4 出现段错误后,使用bt来打印调试栈中的信息,如下
-------------------------------------------------------------------------
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1828]
handler () at pthread_getdata.c:331
331 pthread_getdata.c: 没有那个文件或目录.
in pthread_getdata.c
(gdb) bt
#0 handler () at pthread_getdata.c:331
#1 0x0000d8b8 in pthread_getdata (arg=<value optimized out>) at pthread_getdata.c:991
#2 0x76f41b10 in ?? ()
#3 0x76f41b10 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
----------------------------------------------------------------------------
4.5 输入q,选择y退出远程调试
相关文章推荐
- 【GDB】gdbserver的使用,远程调试开发板
- 使用gdbserver远程调试
- 使用gdbserver远程调试
- openwrt下使用gdbserver远程调试
- 使用gdbserver远程调试
- 在ubuntu10.04成功移植gdbserver及gdbserver使用介绍(用于CCSV5.2远程调试ARM CORTEX-A8程序)
- Ubuntu和Mac使用gdbserver远程调试android源码
- Android native debug: 手动使用gdbserver远程调试C代码
- 使用gdb、gdbserver在ARM-Linux下进行远程调试
- 使用gdbserver远程调试
- uclinux使用gdb和gdbserver远程调试
- 使用gdbserver远程调试
- TI-Davinci开发系列之五CCS5.2使用gdbserver远程调试应用程序
- 使用gdbserver远程调试
- 在ubuntu10.04成功移植gdbserver及gdbserver使用介绍(用于CCSV5.2远程调试ARM CORTEX-A8程序)
- 使用gdbserver远程调试
- 使用gdbserver远程调试
- gdbserver远程调试
- GDB + gdbserver 远程调试android native code
- 交叉编译gdb+gdbserver实现远程调试