Ubuntu系统下gcc编译过程

1,预处理阶段(预编译)

gcc -E test.c -o test.i

(其中-o file输出到指定文件file)

2,编译阶段

gcc -S test.i -o test.s

(test.s就是生成的汇编语言文件)

3,汇编

gcc -c test.s -o test.o

(test.o为目标程序)

4,连接

gcc test.o -o test

(可执行文件test)

在这里插入图片描述

小结:也可以直接完成,编译连接过程

gcc test.c -o test

5,关于优化
time命令可以查看运行时间
其中,real为程序总的执行时间,包括进程的调度,切换等时间
user:用那个花执行时间
sys:内核执行时间
在这里插入图片描述
优化参数选项:
-O0不进行优化
-O1基本优化,使执行程序变得更快
-O2在O1基础之上进一步优化,如处理器指令调度
-O3开启所有优化
-Os生成最小可执行文件,主要用于嵌入式领域。

6,关于编译告警和出错选项。
-ansi 支持符合ANSI标准的C程序
-pedantic 允许发出ANSI C标准所列的全部警告信息
-w 关闭所有告警
-Wall 允许发出gcc提供的所有有用的告警信息
-werror 把所有的告警信息转化成错误信息,并在告警发生时终止编译

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值