【实验】GDB实验

【实验】GDB实验


一、实验目的

1、理解gdb工具原理
2、使用gdb工具进行调试程序
3、gdb远程调试

二、实验原理(略)

三、实验步骤

1、在/embedded目录下创建目录,目录名:testgdb
2、创建文件greeting.c 如下
#include

int main()
{
void my_print(char *string);
void my_print2(char *string);
char my_string[]="hello there";
my_print(my_string);
my_print2(my_string);
}

void my_print(char *string)
{
printf("The string is %sn",string);
}

void my_print2(char *string)
{
char *string2;
int size,size2,i;
// int size,i;
size=strlen(string);
size2=size-1;
string2=(char *)malloc(size+1);
for (i=0;i
string2[size2-i]=string[i];
// string2[size-i]=string[i];
string string2[size+1]='0';
printf("The string printed backwand is %sn",string2);
}

3、创建Makefile文件如下:
greeting:greeting.o
gcc -g -o greeting greeting.o
greeting.o:greeting.c
gcc -g -c greeting.c
clean:
rm *.o
4、执行make
5、执行gdb greeting 进入gdb调试
6、

file
装入想要调试的可执行文件 .

kill
终止正在调试的程序 .

list
列出产生执行文件的源代码的一部分 .

next
执行一行源代码但不进入函数内部 .

step
执行一行源代码而且进入函数内部 .

run
执行当前被调试的程序

quit
终止 gdb

watch
使你能监视一个变量的值而不管它何时被改变 .

break
在代码里设置断点 , 这将使程序执行到这里时被挂起 .

make
使你能不退出 gdb 就可以重新产生可执行文件 .

shell
使你能不离开 gdb 就执行 UNIX shell 命令 .

如上指令尝试调试
7、远程调试主要步骤:

–(minicom下)执行
./gdbserver 192.168.0.110:2345 hello
注意所在目录
–(另一个终端下)
./arm-linux-gdb hello
(gdb) target remote 192.168.0.115:2345


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值