<Linux>Linux对C程序的调试过程--gcc的编译过程
来源:互联网 发布:矩阵图怎么画 编辑:程序博客网 时间:2024/05/18 02:50
作者:wsg
时间:2017年8月21日
一、gcc对C程序的编译命令为:
如:gcc a.c -o a,这样就生成了可执行文件a。实际上,这并不是一步生成的,中间还经历了预处理、编译、汇编、链接。gcc 源文件名 -o 目标文件名
1、预处理:将.c文件生成.i文件。
.c-->.i命令为:
2、编译:将.i文件生成.s文件。gcc a.c -o a.i -E
.i-->.s命令为:
3、汇编:将.s文件生成.o文件。gcc a.i -o a.s -E
.s-->.o命令为:
gcc a.s -o a.o -c
4、链接:将.o文件生成可执行文件
.o-->(可执行文件):
gcc a.o -o a
/**示例:test.c**/#include <stdio.h>#define MAX 3int main(void){int a;a = MAX;printf("%d\n", a);return 0;}三、图示:
1、执行gcc test.c -o test.i -E命令生成test.i文件,再用cat test.i命令查看,如下:
可见这一步只是将程序中的MAX替换成了宏定义中定义的数3,这是一个预处理的步骤。
2、执行gcc test.i -o test.s -S命令生成汇编源程序:
assembler source就是汇编源程序的意思。
阅读全文
0 0
- <Linux>Linux对C程序的调试过程--gcc的编译过程
- linux下c程序的编译过程
- GCC编译c程序的工作过程
- gcc编译C程序的过程
- linux下编译c文件的过程(gcc)
- 一个C程序的编译过程(Linux环境下Gcc)
- 一个C程序的编译过程(Linux环境下GCC)
- 一个C程序的编译过程(Linux环境下Gcc)
- Linux下的简单C程序gcc编译、gdb调试。
- linux gcc 的编译过程 详解
- Linux下GCC编译的四个过程
- Linux下GCC编译的四个过程
- 【Linux】gcc的四个编译过程
- Linux下Gcc 的编译过程
- linux gcc编译器的编译过程
- linux GCC编译过程
- linux GCC编译过程
- linux gcc 编译过程
- HDU
- 测试流程
- JavaScript(面向对象+原型理解+继承+作用域链和闭包+this使用总结)
- Minetest源码分析九:ClientMap minetest->clientmap.h/clientmap.cpp ClientMap创建调用 ClientMap只创建了一次,一个game
- HDU 3336 Count the string
- <Linux>Linux对C程序的调试过程--gcc的编译过程
- 百度OCR文字识别API使用心得===com.baidu.ocr.sdk.exception.SDKError[283604]
- Android v4包CompoundButtonCompatLollipop.class重复问题
- 15读书笔记之装饰着设计模式
- spark之实用案例
- n & (n-1)
- Android App加固原理分析
- HDU 3336 Count the string(KMP+稍微DP+next数组的运用)
- idea离线使用jrebel(亲测可用)