基本语法
目标1:依赖1
命令1
目标2:依赖2
命令2
以shttpd嵌入式服务器源码编译makefile为例
INCLUDE :=../../include
all:auth.o cgi.o compat_unix.o config.o io_cgi.o io_dir.o io_emb.o io_file.o io_socket.o io_ssi.o io_ssl.o log.o md5.o mime_type.o shttpd.o standalone.o string.o
gcc *.o -o shttpd -ldl
auth.o: auth.c
gcc -c auth.c -I$(INCLUDE)
cgi.o : cgi.c
gcc -c cgi.c -I$(INCLUDE)
compat_unix.o : compat_unix.c
gcc -c compat_unix.c -I$(INCLUDE)
config.o : config.c
gcc -c config.c -I$(INCLUDE)
io_cgi.o: io_cgi.c
gcc -c io_cgi.c -I$(INCLUDE)
io_dir.o :io_dir.c
gcc -c io_dir.c -I$(INCLUDE)
io_emb.o: io_emb.c
gcc -c io_emb.c -I$(INCLUDE)
io_file.o :io_file.c
gcc -c io_file.c -I$(INCLUDE)
io_socket.o :io_socket.c
gcc -c io_socket.c -I$(INCLUDE)
io_ssi.o :io_ssi.c
gcc -c io_ssi.c -I$(INCLUDE)
io_ssl.o :io_ssl.c
gcc -c io_ssl.c -I$(INCLUDE)
log.o: log.c
gcc -c log.c -I$(INCLUDE)
md5.o: md5.c
gcc -c md5.c -I$(INCLUDE)
mime_type.o: mime_type.c
gcc -c mime_type.c -I$(INCLUDE)
shttpd.o :shttpd.c
gcc -c shttpd.c -I$(INCLUDE)
standalone.o :standalone.c
gcc -c standalone.c -I$(INCLUDE)
string.o : string.c
gcc -c string.c -I$(INCLUDE)
缺少第二行只能编译一个auth.o文件,command每行必须要用tab键开始,否则出现missing separator错误