makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至可以在makefile中执行shell脚本。makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。
make后面如果不加参数,会把第一个目标作为默认的,所以makefile里面定义的all:和使用命令make All是不同的
makefile里面的@开始的命令,将不显示命令,只显示结果,比如:
all:
@echo
@echo "-----"
@python specpool.py```
makefile其中的一条:
fn30:
python specpool.py fn30 --hidate $(HiDate)```
当执行make fn30 HiDate=201605
的时候,会将HiDate变量即$(HiDate)
赋值为201605,执行Python程序进行解析HiDate。