通用makefile 编写

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

猜你喜欢

转载自blog.csdn.net/zhangguangtao1207/article/details/80459164