分享一个比较通用的makefile,工程目录可以有./lib,./src和./inc,详细参考makefile里面的内容。
CROSS_COMPILE = #交叉编译器
LD = $(CROSS_COMPILE)gcc
CC = $(CROSS_COMPILE)gcc
TARGET = test_app #目标文件名
SRCS = $(wildcard ./src/*.c)
OBJS := $(SRCS:.c=.o)
INCLUDES = -I ./inc #头文件路径
LIBS = -Llib -lpthread -lrtp #库的路径及相关库
CCFLAGS = -g -Wall -O0 #告警及优化等级
all: $(TARGET)
%.o : %.c
$(CC) -o $@ $(INCLUDES) $(CCFLAGS) -c $<
$(TARGET) : $(OBJS)
$(CC) -o $@ $^ $(LIBS)
@rm -rf $(TARGETS) $(OBJS) *~
clean :
@rm -rf $(TARGETS) $(OBJS) *~
#.SUFFIXES:
.PHONY : all clean