gcc基本指令+gdb调试

来源:互联网 发布:vi系统 知乎 编辑:程序博客网 时间:2024/06/03 14:53

GCC

-o生成指定名字可执行文件    gcc hello.c -o hello-c只编译,生成.o目标文件    gcc -c hello.c-g产生调试工具gdb所必要的符号信息    gcc -g hello.c -o hello-O对程序进行优化编译、链接,可提高编译、链接速度-O2优化更加彻底,不过编译时间更长-I-I dirname 引入编译需要的头文件目录-L-L dirname 引入编译需要的库文件目录-l-lname 引入库函数 eg.数学库 libm.a 用 -lm-static静态链接,编译后文件变大 静态链接.a后缀  动态链接.so后缀    gcc -static mathTest.c -o mathTest -lm-Wall生成所有警告信息-w不生成任何警告-DMACRO定义MACRO宏#include<stdio.h>

void main()
{
    #ifdef YES
        printf("hello\n");
    #endif
}
gcc hello.c -o hello -DYES  ===>>>  #define YES




GDB

list(l)显示程序break(b) 函数名在函数入口处打断点    b mainbreak(b) 行号指定行打断点    b 6break(b) 文件名:行号在指定文件的指定行加断点break(b) 行号 if 条件当条件为真,指定行号断点生效  info break查看所有断点delete 断点编号删除断点run(r)开始运行程序next(n)单步运行程序,不进入子函数step(s)但不运行程序,进入子函数continue(e)继续运行程序  print(p) 变量名显示变量的值finish运行程序,直到函数结束watch 变量名对指定变量进行监控quit(q)退出gdb



原创粉丝点击