l Makefile規(guī)則
Target ... : prerequisites...
Command
...
...
其中:target:目標(biāo)文件、objectFile 、執(zhí)行文件都可以。
Prerequisites:生成那個(gè)target所需要的文件或是目標(biāo)。
Command:make執(zhí)行的命令。
target一個(gè)文件或者多個(gè)文件依賴于prerequisites中的文件,其中生成的規(guī)則定義在command中,
Makefile文件一定要要Tab鍵作為開頭。
l Make工作流程
Make首先在當(dāng)前目錄下找名字為”Makefile”或者“makefile”的文件;
如果找到,就會(huì)找文件中的第一個(gè)目標(biāo)文件(target),
Make會(huì)一層一層的找文件的依賴關(guān)系,直到最終編譯出第一個(gè)目標(biāo)文件,如果被依賴的文件找不到,會(huì)直接退出,并報(bào)錯(cuò)。
Make clean:用于清除所有的目標(biāo)文件,以便重新編譯。
Makefile文件中可以使用變量 ,通過一個(gè)變量可以定義所有文件
objects = main.o kbd.o command.o display.o
insert.o search.o files.o utils.o
后面我們就可以通過$(objects)的方式使用這個(gè)變量了。