简单制作Makefile 文件

简单制作Makefile文件


通常要制作Makefile是因为要编译链接的源文件较多且相互关联。如

main函数中,调用了swapprintprintstr三个函数,而这三个函数和main函数都分别是放在各自不同的.c文件中的。


那么,制作Makefile可以一键生成可执行文件。


vim Makefile


第一行是希望生成的可执行文件的名字,这里取名main

main: main.o swap.o print.o printstr.o

后面都是生成main需要的目标文件,

第二行,写出怎样生成的规则,通常是用gcc编译即可,注意,要加上tab符号,不然会报错。

<tab>gcc  -o main main.o swap.o print.o printstr.o前面的空格是由tab建生成的。


第三行到下面几行,是每个目标文件.o生成的规则。

main.o: main.c (生成main.o依赖main.c,故而要写上,如果还有头文件.h依赖,也要写上)

            gcc -c main.c

swap.o: swap.c

            gcc-c swap.c

print.o: print.c

            gcc-c print.c

printstr:printstr.c

            gcc-c printstr.c

最后一行可以写个clean命令来清除所生成的文件.


Clean:

            rmmain main.o swap.o print.o printstr.o


如图



但是,这样写有些麻烦,可以用变量来替代一些重复的东西


如定义变量obj

obj= main.o swap.o print.o printstr.o


main: $(obj)

              gcc-o main $(obj)

main.o:(后面没有写,是因为make工具会自动的找出main.c的,但是如果有其他头文件.h,则不可省略。

(这里,生成规则页不用写,make会自动知道,它很聪明)

swap.o:

print.o:

printstr.o:

clean:

             rmmain mian.o swap.o print.o printstr.o



通常,采用第二种,简单明了,不易出错。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值