Makefile是文本,不要把他当成特殊格式。
在linux下直接vim Makefile就可以了。
vim Makefile
编写makefile的步骤
- 弄清楚文件之间的依赖关系
- 编译出可执行文件,和目标文件链接起来
- 清理所有生成的目标文件和可执行文件
代码:
01byteorder:01byteorder.o //依赖于目标文件
gcc 01byteorder.o -o 01byteoeder //命令行前面要“table”符
01byteorder.o:01byteorder.c
gcc -c 01byteorder.c -o 01byteorder.o
clean:
rm -rf *.o 01byteorder
//在用户输入“make clean” 命令时,清楚所有 .o 目标文件和生成的运行文件。
三个常用变量:$@,$^,$<
$@ :目标文件
$^ :所有的依赖文件
$< :第一个依赖文件
cc = gcc
CFLAGS = -Wall -g //Wall 显示所有警告 -g加入调试信息
BIN = echosrv echocli
all = $(BIN) //生成所有目标文件
%.o : %.c
$(cc) $(CFLAGS) -c $< -o $@
clean:
rm -f $(BIN).o