gdb调试

由于职业原因,这两天简单学习了下gdb调试,基本的命令比如:

gcc test.c -o test.out

但是为了使用gdb,在编译过程中加入调试信息,需要使用gdb -g test.c -o test.out //这里-g的意思是生成调试信息。

[liuqiang@slaves1 ~]$ gcc -g test.c -o test.out
[liuqiang@slaves1 ~]$ ll
总用量 28
-rw-rw-r-- 1 liuqiang liuqiang    5 8月   8 19:21 test_1.txt
-rw-rw-r-- 1 liuqiang liuqiang  212 8月  12 13:41 test.c
-rw-rw-r-- 2 liuqiang liuqiang   13 8月   8 19:26 test_ln
-rwxrwxr-x 1 liuqiang liuqiang 9592 8月  12 15:59 test.out
lrwxrwxrwx 1 liuqiang liuqiang    8 8月   8 19:23 test_sln -> test.txt
-rw-rw-r-- 2 liuqiang liuqiang   13 8月   8 19:26 test.txt
[liuqiang@slaves1 ~]$ gdb test.out
GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-114.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
...
Reading symbols from /home/liuqiang/test.out...done.
(gdb) b 9
Breakpoint 1 at 0x4005c8: file test.c, line 9.
(gdb) r
Starting program: /home/liuqiang/test.out 

Breakpoint 1, main () at test.c:9
9         printf("uid=%d\n", uid);
Missing separate debuginfos, use: debuginfo-install glibc-2.17-260.el7_6.6.x86_64
(gdb) c
Continuing.
uid=1002
euid=1002
[Inferior 1 (process 13703) exited normally]
(gdb) q

 

你可能感兴趣的:(Linux)