gcc介绍
2023-12-17 20:37:31
gcc编译有四个步骤:预处理、编译、汇编、链接
前提条件: hello.c
1 预处理? ?gcc -E hello.c -o?hello.i
? ? ? ? -o 指定输出文件为hello.i
? ? ? ? 展开宏、头文件,替换条件编译,删除注释、空行、空白
2 gcc -S 编译 gcc -S hello.i -o hello.s
? ? ? ? 检查语法规范,消耗时间、系统资源最多。
3 汇编 gcc -c hello.S -o hello.o
? ? ? ? 将汇编指令翻译成机器指令
4 链接?
? ? ? ? 数据段合并、地址回填
编译指令
gcc hello.c -o hello.out
? ? ? ? hello.out为编译输出的可执行文件
gcc -I ../ hello.c -o hello.out
? ? ? ? 指令同上,-I参数用于指定包含头文件目录位置(头文件与源码不在同一个位置时使用)。
-E 只做预处理。
-S 只做预处理、编译。
-c 只做预处理、编译、汇编,得到二进制文件。
-g 编译时添加调试信息。gcc hello.c -o hello.out -g
-Wall 显示所有编译警告?gcc hello.c -o hello.out -Wall
-D 注册一个宏?gcc hello.c -o hello.out -D HELLO
????????
文章来源:https://blog.csdn.net/www586089/article/details/135049000
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!