gcc 编译选项

1.1 常规选项

1、没有任何选项:gcc   helloworld.c

结果会在与helloworld.c相同的目录下产生一个a.out的可执行文件。

2-o选项,指定输出文件名:gcc -o helloworld helloworld.c

-o意思是Output即需要指定输出的可执行文件的名称。这里的名称为helloworld

3-c选项,只编译,不汇编连接:gcc -c helloworld.c

-c意思就是Compile,产生一个叫helloworld.o的目标文件

4-S选项,产生汇编源文件:gcc -S helloworld.c

-S意思就是aSsemble,产生一个叫helloworld.s的汇编源文件

5-E选项,预处理C源文件:gcc -E helloworld.c

-E意思就是prEprocess。输出不是送到一个文件而是标准输出。当然可以对它进行重定向:

gcc -E helloworld.c > helloworld.txt

1.2 优化选项

1) -O选项,基本优化:gcc -O helloworld.c

-O意思就是Optimize,产生一个经过优化的叫作a.out的可执行文件。也可以同时使用-o选项,以指定输出文件名。如:

gcc -O -o test helloworld.c

即会产生一个叫test的经过优化的可执行文件。

2) -O2选项,最大优化:gcc -O2 helloworld.c

产生一个经过最大优化的叫作a.out的可执行文件。

1.3 调试选项

1) -g选项,产生供gdb调试用的可执行文件:gcc -g helloworld.c

产生一个叫作a.out的可执行文件,大小明显比只用-o选项编译汇编连接后的文件大。

2) -pg选项,产生供gprof剖析用的可执行文件:gcc -pg helloworld.c

产生一个叫作a.out的执行文件,大小明显比用-g选项后产生的文件还大

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值