简单的MakeFile编写

简单的MakeFile编写

命令行生成执行程序

命令行分步执行生成可执行程序步骤繁琐,所以尝试编写MakeFile进行编译;
比如main.cpp编译时依赖usage_energy.cpp,所以编译步骤如下:

g++ -c usage_energy.cpp -o usage_energy.o
g++ -std=c++11 -pthread -c main.cpp -o main.o
g++ main.o usage_energy.o -o test -pthread

编写makefile时有一定的规则:
目标(target): 需要的条件(dependencies) (注意冒号右边有空格)
  命令(system command) (注意前边用tab键开头)
解释一下:
 1、目标可以是一个或多个,可以是Objiect File,也可以是执行文件,甚至可以是一个标签。
 2、需要的条件就是生成目标所需要的文件或目标
 3、命令就是生成目标所需要执行的命令
总结:
 Makefile规则规定了编译的依赖关系,目标文件依赖于条件,命令表示目标文件与所依赖条件之间的规则。

Makefile:

OBJS = main.o usage_energy.o

test: $(OBJS)   #表示最终生成的test执行程序依赖于main.o和usage_energy.o
        g++ $(OBJS) -o test -pthread   #命令行,前面必须为tab,编译出test可执行文件。-o表示你指定的目标文件名。
main.o: main.cpp usage_energy.h
        g++ -std=c++11 -pthread -c main.cpp -o main.o
usage_energy.o: usage_energy.cpp usage_energy.h
        g++ -c usage_energy.cpp -o usage_energy.o
clean:   #当用户键入make clean命令时,会删除*.o 和test可执行文件。
        rm -rf *.o test

写好makefile,在终端里面直接键入make就会执行makefile中的指令了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值