分类: LINUX
2009-08-04 17:10:11
嵌入式系统中的gdb调试 |
1、首先你要下在gdb的源代码,然后把它编译并安装成你的平台的xxx-linux-gdb。比如说arm-linux-gdb的编译放法如下:
1) 下载GDB的源代码,如gdb-5.0 2) 执行如下指令: cd gdb-5.0 ./configure --target=arm-linux make(生成gdb) make install(生成arm-linux-gdb,并存入/usr/local/bin/) 2、在gdb源代码里有一个gdbserver目录,在这个目录下运行:
make gdbserver 生成gdbserver。当然,你要把gdbserver的Makefile中的CC设置成你的平台的交叉编译工具。 3、把gdbserver和待调试的应用程序下到你的板子上;而应用程序编译的时候要加-g选项,它的源代码要放在pc机上,用(正对你的平台的)xxx-linux-gdb调试时需要。
4、如果你用串口1调试hello的话,你就要现在板子上运行命令:
gdbserver hello /dev/ttyS0 这时gdbserver就在等待gdb的应答信号了。 5、然后在pc机上运行命令:
xxx-linux-gdb hello 6、在xxx-linux-gdb里敲入入下命令:
set remotedevice /dev/ttyS0(这里设置串口1) set remote baud 9600 (这里设置串口波特率) set debug remote 1(可选) target remote /dev/ttyS0 操作到这儿,gdb就应该和gdbserver联系上了。 5) 运行其它GDB命令进行调试。
BTW:gdbserver可能不会一下子就能便已成功,你可能要修改一些配置,甚至要修改源代码。关键在于它里面针对串口的代码可能需要修改(我以前就遇到这样的问题)。 |