make
makefile 的变量
定义变量
:= 赋值
添加:
变量+=[文本] ======== 变量:=[文本] [文本]
变量的引用
$(变量)
$单子符变量
aa:=123
$(aa)
a:=123
$a
如:
G:=gcc
$G -o power power.c
内置变量
$@ 当前目标文件
$? 当前更新的依赖性列表
$< 依赖列表的第一个文件
$^ 所有依赖性列表
虚目标:
all 工程中所有可以执行者 通常是第一个目标
test 测试
clean 生成的所有文件
install 安装项目的可执行文件
uninstall
单选依赖
模块1 mian.c
模块2 ui
模块3 func.c
模块4 linklist.c
bin/hotel.out:obj/view.o obj/link.o obj/control.o test.o hotel_test.c
gcc -o bin/hotel.out -Iinclude -c obj/view.o obj/control.o obj/link.o obj/hotel_test.c test.c
//定义变量
TAGET:=bin/hotel.out
OBJ:=obj/view.o obj/control.o obj/link.o
OBJ+=hotel.c
F:=-Wall -g
CC:=gcc
$(TAGET):$(OBJ)
#(CC) -o $@ -I./include $^ $(F)
obj/%.o:src/%.c
$(CC) -o $@ -I./include $^ $(F)
#u
clean:
rm -vf bin/houtel.out
rm -vf obj/*.o