在Linux中使用make命令来编译程序,特别是大程序;而make命令所执行的动作依赖于Makefile文件。
为什么需要Makefile
1、Makefile用途
使用GNU Make工具来管理程序是每个Linux工程师必修掌握的技能。make能够使整个程序的编译、链接只需一个命令(make)就可以完成。
Make的工作主要依赖于一个叫Makefile的文件。Makefile文件描述了整个程序的编译,连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译,如何最后产生我们想要得可执行文件。
2、Makefile构成
(1)规则
Makefile中最重要的组成部分是”规则“
规则:用于说明如何生成目标文件,规则的格式如下:
目标(targets)....:依赖(prerequisite)....
<tab>命令(command)
目标 依赖 命令
例如:
led.bin:led.o #目标led.bin依赖文件led.o
arm-linux-ld -Tled.lds -o led.elf led.o #命令
特别提醒:命令需要使用【TAB】键空格
伪目标
Makefile中把那些只包含命令,没有任何依赖的目标称为“伪目标”(phony targets)。