这两天学了Makefile,下面记录一些有关与自己的学习笔记.
make 命令执行时,需要一个 Makefile 文件,以告诉 make 命令需要怎么样的去编译和链接程序.
一.基本语法
1.首先,我们看下makefile书写规则:
target : preprequisites
command(注意,此行一定是开头tab键然后才开始写命令)
2.makefile当中#代表注释
3.最后一行可写
clean:
rm -f *o
已清楚以构建的目标文件
4.当一行规则较长时,可采用\
换行,比如
rm edit main.o kbd.o command.o display.o \
insert.o search.o files.o utils.o
注意:\ 符号后不能有空格
二.实例:
首先我的程序是创建一个People类,然后再创建 Student类和Teacher类共有继承People类,在Student类中创建一个私有属性Teacher类的对象teacher,最后在main函数里创建Student类的对象student.
函数编译过程是先编译people.cpp,然后创建student时会先创建t eacher对象,因此要先编译teacher.cpp再编译student.cpp,最后再编译
main.cpp,大致过程就是如此,
makefile代码如下:
main:main.cpp student.o people.o teacher.o
g++ main.cpp student.o people.o teacher.o -o main
student.o:student.h people.o
g++ student.cpp -c -o student.o
teacher.o:teacher.h people.o
g++ teacher.cpp -c -o teacher.o
people.o:people.h
g++ people.cpp -c -o people.o
clean:
rm -f *o