hello.c编译阶段

本文详细介绍了GCC的预处理、汇编和编译阶段,以及Makefile的使用和基本语法,包括目标文件、依赖文件、隐含规则和通配符的运用。通过实例展示了如何从.c文件编译生成最终的可执行文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

远程克隆git clone git@gitlab.hitron.com:HIVE/qsdk.git ARIA2210

./setup/ 


开发使用 make -j16 V=s

release code make -j1 V=s

 

预编译 gcc -E hello.c -o hello.i  得到。i文件 

 作用:    把头文件和库文件引用进来

               展开宏定义

汇编阶段:gcc -S hello.i -o hello.S 得到.s文件

 作用:

编译:gcc -C  hello.s -o hello.o 得到.o文件

链接  gcc hello.o -o hello

Makefile :脚本语言

#注释  

语法格式:   目标文件:依赖文件

 tab指令

第一个目标文件是终极目标

伪目标: .PHONY:
clearall: 
#删除所有文件
    rm -rf hello.i hello.S hello.o hello
clear:
#删除过程文件
    rm -rf hello.i hello.S hello.o

  用make          ---------  make clearall

2  变量  = 替换     +=追加   :=常量

Tange = test
CC : = gcc 

引用 $(tange)

3隐含文件 %.c任意的.c文件       *.c全部的.c文件

%.o:%.c

        $() -c %.c -o %.o

4 通配符:$^ 所有的目标文件    ¥@所有的依赖文件    $< 所有依赖文件的第一个文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值