CC = gcc
prom = test
deps = $(shell find ./ -name "*.h")
src = $(shell find ./ -name "*.c")
obj = $(src:%.c=%.o) #字符替换函数,它会将src所有的.c字串替换成.o
$(prom): $(obj)
$(CC) -o $(prom) $(obj)
%.o: %.c $(deps)
$(CC) -c $< -o $@
clean:
rm -rf $(obj) $(prom)
动态连接库
CC = gcc
prom = libtest.so
deps = $(shell find ./ -name "*.h")
src = $(shell find ./ -name "*.c")
obj = $(src:%.c=%.o) #字符替换函数,它会将src所有的.c字串替换成.o
$(prom): $(obj)
$(CC) -shared -fPIC -o $(prom) $(obj)
%.o: %.c $(deps)
$(CC) -fPIC -c $< -o $@
clean:
rm -rf $(obj) $(prom)
参考
https://www.cnblogs.com/owlman/p/5514724.html