码迷,mamicode.com
首页 > 系统相关 > 详细

linux下用gcc如何生成预处理、汇编等文件

时间:2016-12-03 02:03:54      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:class   index   nbsp   image   html   int   exp   step   链接   

【gcc -E test.c -o test.i------>预处理文件生成.i 文件。】

  1. 1、c语言程序生成过程
  2. C语言程序的生成过程可以简单的分为:编辑、预处理、编译、汇编、链接五个阶断。
  3. 下面所有的操作以hello world程序为例,源码文件命名为t.c,源码内容如下:
  4. #include <stdio.h> 
  5. int main()
  6. {
  7. printf("hello world\n");
  8. return 0;
  9. }
  10. 2

    2、预处理阶断

    预处理阶断是对c源码中的预处理代码进行处理。

    gcc -E -o t.i t.c

  11. 3

    3、编译阶断

    编译阶断是将c源码处理为汇编代码。

    gcc -S -o t.s t.i

    或者

    gcc -S -o t.s t.c

  12. 4

    4、汇编阶断

    汇编阶断是将汇编代码处理为二进制代码。

    gcc -c -o t.o t.s

    或者

    gcc -c -o t.o t.c

  13. 5

    5、链接阶断

    链接阶断将二进制代码打包成一个操作系统可以识别的可执行文件格式,linux是elf格式,windows上是pe格式。

    gcc -o t t.o

    或者

    gcc -o t t.c

    1. 6
    2. 6、运行阶断
    3. 运行阶断,有操作系统的可执行文件加载器负责加载并执行程序。
    4. ./t
    技术分享

linux下用gcc如何生成预处理、汇编等文件

标签:class   index   nbsp   image   html   int   exp   step   链接   

原文地址:http://www.cnblogs.com/dpf-learn/p/6127750.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!