gcc命令用法总结

来源:互联网 发布:淘宝开学季有什么优惠 编辑:程序博客网 时间:2024/06/10 02:10

在linux中编译C语言程序,那么就一定会用到gcc

预处理:进行宏替换,去除注释,条件编译,包含头文件,保留pragma

       gcc -E test.c -o test.i//将test预处理输出test.i文件



编译:进行词法分析,语法分析,语义分析,优化等处理,生成汇编代码

       gcc -S test.i//将预处理输出文件test.i汇编成test.s



汇编:生成test.o机器可识别代码,.o是可重定位的目标文件

       gcc -c test.s//只编译不链接



链接:生成可执行文件

       gcc test.o//默认生成a.out,可以-o重定向到一个文件



gcc选项:

(1)-E 只激活预处理,不会生成文件,需要重定向到一个输出文件

(2)-S 编译到汇编语言不进行汇编和链接

(3)-c 编译到目标代码

(4)-o 文件输出到文件

(5)-g 生成调试信息,当使用gdb调试时,需要用到



代码编写完成,我们一定会用到调试,调试就需要用到gdb了,下面是使用gdb调试时常用的指令 

gdb

可执行文件程序名

l (字母l)

查看当前文件十行

l 函数名

查看当前文件制定函数

b 行号

设置断点

i b

查看设置的断点

执行到断点处

单步调试,进入函数体内

执行一步操作finish   跳出函数体

u

跳过单词循环

whatis  变量名

查看变量类型

print 变量名 

查看变量值

 q 

退出


l 函数名  显示函数代码


设置断点和查看断点




查看数据的值和类型



跳出函数



退出