linux下 几个常用makefile模板,亲测可用

时间:2023-03-09 18:45:29
linux下 几个常用makefile模板,亲测可用

一 生成动态链接库的模板:

  

 #######################
# Makefile
####################### # compile and lib parameter
CC := g++
LIBS :=
LDFLAGS :=
DEFINES :=
INCLUDE := -I.
CFLAGS :=
CXXFLAGS:= # link parameter
#LIB := libfunc.so
LIB := libfunc.a #link
$(LIB):func.o
$(CC) -shared -o -fPIC -o $@ $^
#compile
func.o:thread.c
$(CC) -c -fPIC $^ -o $@ # clean
clean:
rm -fr *.o

 

二 编译可执行程序的模板:

 ###########################################
#Makefile for simple programs
###########################################
INC=
LIB= -lpthread CC=gcc
CC_FLAG=-Wall PRG=threadtest
#OBJ=thread.o CThreadPool.o CThread.o CWorkerThread.o threadpooltest.o
OBJ=thread.o $(PRG):$(OBJ)
$(CC) $(INC) -o $@ $(OBJ) $(LIB) .SUFFIXES: .c .o .cpp
.cpp.o:
$(CC) $(CC_FLAG) $(INC) -c $*.cpp -o $*.o .PRONY:clean
clean:
@echo "Removing linked and compiled files......"
rm -f $(OBJ) $(PRG)

  测试结果:

1 参考文档: https://blog.csdn.net/lzx_bupt/article/details/7988192

2 代码所在路径: https://github.com/DyLanCao/iApply/tree/master/c_example/makefile