makefile简单helloworld

makefile推荐文章
编译链接推荐文章
window上使用gcc环境

在单片机的ide里这些都是不需要我们操心的,但是在Linux环境下都是需要手动控制的。因此只能手动进行单步处理。
在这里插入图片描述
每一步都要自己处理太麻烦了,所以出现了makefile 和 cmake,本次简单提下makefile。
makefile是把这个过程用某种方式有规律的规则进行,比手动一个一个简单了一点点。
下面是makefile文件

OBJS = file1.o file2.o  
CC = gcc  
CFLAGS = -Wall -O -g  
    
helloworld : $(OBJS)  
    $(CC) $(OBJS) -o helloworld  
    
file1.o : file1.c file2.h  
    $(CC) $(CFLAGS) -c file1.c -o file1.o  
    
file2.o : file2.c file2.h  
    $(CC) $(CFLAGS) -c file2.c -o file2.o  
    
clean:  
    rm -rf *.o helloworld  

在Linux输入make指令时,就按照预先写好的makefile一步一步进行的
像上面的第一步就会变成

#因为这里需要.o文件,但是这个文件会在下面指令生成,会自动先执行下面得到.o文件
gcc file1.o file2.o -o helloworld 

此时.o文件还没有生成,依赖关系会自动生成

gcc -c file1.c -o file1.o
gcc -c file2.c -o file2.o

-c是参数,编译和汇编,但不链接
上面最开始的图,最后一步是链接,不链接肯定无法使用,因此,手动敲命令则是

gcc  file1.c -o file1 //举例单个文件情况

-o是指定输出文件,如果不指定,则会生成默认的文件名,比如a.out,类似另存为操作。
中间过程的-E -s省略了,内部完成了

实际上可以直接敲命令也是可行的,如果不嫌弃烦的话。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值