使用gdb进行编译和调试
2013-03-19 20:53
369 查看
GCC程序编译
基本格式:gcc [options] [filename]-o 输出可执行文件,如果不给出这个选项,则默认输出a.out可执行文件;如:gcc hello.c -o hello
-c 只编译,不连接为可执行文件,生成为以.o为后缀名的目标文件;如:gcc -c hello.c
-S 只激活预处理和编译,就是指把文件编 译成为汇编代码。如:gcc -S hello.c
-O 优化编译、连接;-O2对-O再进行优化编译、连接;
-g 编译时,对函数库产生符号信息;(注:当在gdb中调试时,这个必选);
-D 定义宏命令;相当于:#denfine
-static 静态链接库文件;一般默认的为动态;
-Wall 生成警告信息;
-w不生成任何警告信息;
GDB程序调试
基本步骤:
1、启动调试;如:gdb filename
2、在指定地方停住程序;
3、程序停住时,可检查程序的状态;
4、退出;
注:如调试,必须在gcc中的选项中加入-g
list(l):查看程序;
break(b):设置断点;可以是函数名、行号、文件名:行号、行号 if 条件;
info break:查看断点;
delete:删除断点,如:delete 断点编号;
run(r):运行;
next(n):单步执行,不进入子函数;
step(s):单步执行,进入到子函数中;
continue(c):继续;
print(p):查看变量;
finish:运行程序,到当前函数结束;
watch:对指定变量进行监控;
quit(q):退出;
相关文章推荐
- 使用VS+VisualGDB编译调试Linux程序
- 使用gdb在Android Emulator中进行调试
- 如何使用Eclipse和GDB对JNI代码进行调试(JAVA和C)
- Window平台Grmon下如何使用gdb进行调试
- Windows下使用ndk-gdb进行调试
- Linux下交叉编译gdb,gdbserver+gdb的使用以及通过gdb调试core文件
- Linux下使用GDB进行调试
- gdb的简单使用和gdb+gdbserver方式进行ARM程序调试
- C编译: 使用gdb调试
- 使用GDB进行嵌入式远程调试
- 在ARM开发板中使用gdb进行远程调试
- 编译gdb和gdbserver使用wget上传到路由执行调试
- 使用eclipse+gdb进行arm板嵌入式linux远程调试的配置方法
- 在win下使用gdb进行调试
- [置顶] Linux 使用gdb对c/c++代码进行调试
- Linux下使用gdb进行单步调试(一)
- 使用VS+VisualGDB编译调试Linux程序
- 【转】使用J-Link GDB Server + Eclipse CDT进行ARM程序调试
- GDB 进行调试 使用心得
- gcc编译步骤 动态库、静态库的使用、gdb调试、Makefile编写