#Author:cinience@gmail.com
#edit "src" to your path,it include your c source file
SRC_DIR =.
#edit "inc" to your path,it include your c header file
INC_DIR =.
#edit your .o file
OBJECTS01 = ftpclient.o
OBJECTS02 = chklogin.o clientinfo.o ftpserver.o
#edit your app name
TARGETS01 = client
TARGETS02 = server
#edit your complie
cc = gcc
#edit
CFLAGS = -Wall -O -g
#VPATH = src:inc
vpath %.c $(SRC_DIR)
vpath %.h $(INC_DIR)
all : $(TARGETS01) $(TARGETS02)
#edit "myapp" to your app name
$(TARGETS01) : $(OBJECTS01)
$(cc) $^ $(CFLAGS) -o $@
$(OBJECTS) : %.o : %.c
$(cc) $(CFLAGS) -c $< -I$(INC_DIR)
$(TARGETS02) : $(OBJECTS02)
$(cc) $^ $(CFLAGS) -o $@ -lphread -lmysqlclient
$(OBJECTS) : %.o : %.c
$(cc) $(CFLAGS) -c $< -I$(INC_DIR)
.PHONY : clean
clean :
-rm -f *.o $(TARGETS01) $(TARGETS02)
如果不需要支持多程序编译,只需屏蔽相应的即可
如果还需要支持更多程序,类似的添加即可
这个Makefile范例展示了如何配置编译多个程序,包括ftpclient和ftpserver。用户可以修改SRC_DIR和INC_DIR来指定源代码和头文件路径。编译选项包括-Wall、-O和-g。通过$(cc)、$(CFLAGS)和vpath规则,Makefile能处理源文件和头文件的位置。清理目标clean会删除所有的.o文件和最终的可执行程序。
1224

被折叠的 条评论
为什么被折叠?



