Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1253976
  • 博文数量: 254
  • 博客积分: 1586
  • 博客等级: 上尉
  • 技术积分: 2295
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-15 16:38
个人简介

linux学习中

文章分类

全部博文(254)

文章存档

2016年(6)

2015年(2)

2014年(74)

2013年(93)

2012年(12)

2011年(2)

2010年(51)

2009年(14)

分类: 嵌入式

2016-02-25 17:04:11

OpenWRT下远程调试

一、建立调试环境

1. 配置编译OpenWRT

a) make menuconfig

启动以下两项

Advanced configuration options (for developers) –> Toolchain options –> Build gdb

Utilities –> gdbserver

b) 编译

make V=99,如果已经编译过,则make toolchain/install 编译下gdb即可

2. 编译待调试程序

a) make menuconfig

启动Advanced configuration options (for developers) –> Build options –> Enable debugging

b) 编译程序

以snmpd为例 ,使用make package/net-snmp/compile去编译程序,生成带调试信息的snmpd,作为宿主机调试使用。

 

以上就是准备工作。下面简单介绍一下调试过程。

二、调试程序

1.启动目标机上的待调试程序

首先加载并启动编译好的OpenWRT系统,然后

gdbserver :

2. 启动宿主机gdb

(这里要修复一个bug,方法是:cd /staging_dir/; rmdir lib; ln -s ../toolchain-_/lib lib)。

cd /build_dir/toolchain-_/gdb-6.3/gdb

./gdb               -- 启动

3. 设置gdb,并启动调试程序

1) set solib-absolute-prefix /staging_dir/

2) file /build_dir///

3) 连接目标机:target remote :

4)连接成功之后,就可以按正常的gdb调试流程进行调试了。

 

参考:

1) http://techblog.hollants.com/2009/08/openwrt-remote-debugging/

2) GDB User Manual http://sourceware.org/gdb/current/onlinedocs/gdb/

阅读(1325) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~