gcc hello world 那些事

当我们编译一个hello.c文件时,编译器干了那些事。一般是分为四个阶段。



1.预处理

gcc -E hello.c -o hello.i


gcc编译器把hello.c这个文件所包含sum.h的库都link过来了,并且插入在main的前面,这就是编译器预处理所干的事。

2.编译

gcc -S hello.i -o hello.s


把预处理文件转化成汇编文件

3.汇编

gcc -c hello.s -o hello.o


把汇编文件转化成机器代码,是目标文件也是二进制文件。

4.链接

gcc hello.o -o hello



一般我们用gcc编译一个.c文件时,都会生成一个.out文件也可以自己重命名hello


将各个目标文件链接起来最后生成一个可执行文件。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一章:编译和安装SCons第二章:简单编译第三章:编译相关的一些事情第四章:编译和链接库文件第五章:节点对象第六...
    仙灵儿阅读 12,106评论 0 3
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 3,438评论 0 2
  • 本手册页内容摘自 GNU C 编译器的完整文档,仅限于解释选项的含义.如果发现手册页和Info 文件之间有所矛盾,...
    极客圈阅读 2,069评论 0 5
  • GCC编译器 GCC是一个交叉平台的编译器,我想大家并不会觉得陌生。C/C++开发的时候很多时候都会用到GCC来进...
    故事狗阅读 9,311评论 0 25
  • 今天是五四青年节。 “今年我21岁“”,手机屏幕是这样刷屏,在微信上不同的人各自追忆各自的21岁在干什么。 我的2...
    雪木912阅读 201评论 0 0