makefile文件:编译工程文件

                其本质是用来编译工程文件(内部可以理解为g++命令),用make命令,实现自动化编译。格式如下:

               目标:依赖

                        (tab) 命令

介绍makefile的最初级版本

         当前目录下有 main.cpp temp.cpp temp1.cpp

        执行vim makefile 然后输入指令

        

main:main.cpp temp.cpp temp1.cpp
    g++ -o main main.cpp temp.cpp temp1.cpp

        终端输入make,执行写好的指令。

        这种方法弊端太多,如果工程文件很多,那么makefile中的代码量太大,如果其中的某一个cpp文件被修改,那么其他的文件需要重新被编译,没必要。

        接下来介绍makefile中的变量(执行的功能相当于宏替换):

        自定义变量:

        例:foo =abc  bar=$(foo) 把bar替换成abc;

        自带变量:CC  CPPFLAGS

        自动变量:$@  $< $^

        模式规则 % .o:%.c

      引入高级版本的makefile

target=main2//名字可替换
objects=main.o temp.o temp1.o
CC=g++
CPPFLAGS=-I./
$(target):$(objects)//g++ -o main2 main.o temp.o temp1.o
        $(CC) -o $@ $^//$@规则中的目标
%.o :%.c
        $(CC) -c $< $(CPPFLAGS)//$<第一个条件
.PHONY:clean//伪目标,不检查依赖和更新
clean://删除 可执行文件以及.o文件
        rm -f $(objects) $(target)

执行make

当前目录下会生成 .o与可执行文件main2,执行makefile clean后清理完成,文件消失。

 

         至此,makefile文件建立完毕。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值