gccLinux下的一款编译器。

gcc工作流程:
在这里插入图片描述
完整编译流程:
创建一个c语言源文件:
gcc -E hello.c -o hello.i(头文件展开,进行源文件中的宏替换,注释过滤)
gcc -S hello.i -o hello.s(将源文件编译成汇编文件)(这一阶段耗时最大)
gcc -c hello.s -o hello.o(将汇编文件转换成二进制文件)
gcc hello.o -o hello(将二进制文件打包成可执行文件)

简单编译方式:
gcc hello.c -o hello(将hello.c文件直接生成可执行文件hello
gcc hello.c(默认会将hello.c转换成可执行文件并命名为a.out

gcc编译中的各种参数:
gcc hello.c -I path -o app(指定头文件路径为pathc语言源文件hello.c编译称为可执行文件app)(低版本gcc-Ipath中不许有空格)(在编译时自己写的有文件路劲要正确包含或者指定头文件目录)

gcc hello.c -o hello -D DEBUG(在编译时加上一个DEBUG宏,可用于测试程序,在程序每一条输出语句用该宏包裹,编译时加宏就不用在文件里加宏)

gcc hello.c -o hello -O1(在生成可执行文件过程中将代码优化)(优化等级为0,1,2,3。其中0为不优化,3为最高优化等级)

gcc hello.c -o hello -Wall(输出可对代码进行优化的提示信息,如某个变量未使用过)

gcc hello.c -o hello -g(在程序中添加一些调试信息)(生成的程序会大一些)(gdb调试的时候必须加此参数)

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐