Makefile

linux: 几个常用makefile模板

标签: makefilelinuxlibrarycommand
9984人阅读 评论(3) 收藏 举报
分类:

不才,总结个人常用makefile模板,以备后用。

1、编译动态库

  1. #############################################################   
  2. # Makefile for shared library.  
  3. # 编译动态链接库  
  4. #############################################################  
  5. #set your own environment option  
  6. CC = g++  
  7. CC_FLAG = -D_NOMNG -D_FILELINE  
  8.   
  9. #set your inc and lib  
  10. INC =   
  11. LIB = -lpthread -L./ -lsvrtool  
  12.   
  13. #make target lib and relevant obj   
  14. PRG = libsvrtool.so  
  15. OBJ = Log.o  
  16.   
  17. #all target  
  18. all:$(PRG)  
  19.   
  20. $(PRG):$(OBJ)  
  21.     $(CC) -shared -o $@ $(OBJ) $(LIB)  
  22.   
  23. .SUFFIXES: .c .o .cpp  
  24. .cpp.o:  
  25.     $(CC) $(CC_FLAG) $(INC) -c $*.cpp -o $*.o  
  26.   
  27. .PRONY:clean  
  28. clean:  
  29.     @echo "Removing linked and compiled files......;  
  30.     rm -f $(OBJ) $(PRG)  

2、编译静态库

  1. #############################################################  
  2. # Makefile for static library.  
  3. # 编译静态链接库  
  4. #############################################################  
  5. #set your own environment option  
  6. CC = g++  
  7. CC_FLAG = -D_NOMNG -D_FILELINE  
  8.   
  9. #static library use 'ar' command   
  10. AR = ar  
  11.   
  12. #set your inc and lib  
  13. INC =   
  14. LIB = -lpthread -L./ -lsvrtool  
  15.   
  16. #make target lib and relevant obj   
  17. PRG = libsvrtool.a  
  18. OBJ = Log.o  
  19.   
  20. #all target  
  21. all:$(PRG)  
  22. $(PRG):$(OBJ)  
  23.     ${AR} rv ${PRG} $?  
  24.   
  25. .SUFFIXES: .c .o .cpp  
  26. .cpp.o:  
  27.     $(CC) $(CC_FLAG) $(INC) -c $*.cpp -o $*.o  
  28.   
  29. .PRONY:clean  
  30. clean:  
  31.     @echo "Removing linked and compiled files......"  
  32.     rm -f $(OBJ) $(PRG)  

3、可执行程序

  1. ###########################################  
  2. #Makefile for simple programs  
  3. ###########################################  
  4. INC=  
  5. LIB= -lpthread  
  6.   
  7. CC=CC  
  8. CC_FLAG=-Wall  
  9.   
  10. PRG=threadpooltest  
  11. OBJ=CThreadManage.o CThreadPool.o CThread.o CWorkerThread.o threadpooltest.o  
  12.   
  13. $(PRG):$(OBJ)  
  14.     $(CC) $(INC) $(LIB) -o $@ $(OBJ)  
  15.       
  16. .SUFFIXES: .c .o .cpp  
  17. .cpp.o:  
  18.     $(CC) $(CC_FLAG) $(INC) -c $*.cpp -o $*.o  
  19.   
  20. .PRONY:clean  
  21. clean:  
  22.     @echo "Removing linked and compiled files......"  
  23.     rm -f $(OBJ) $(PRG)  


随机组合、举一反三会写出适合项目的makefile

阅读更多
文章标签: makefile
想对作者说点什么? 我来说一句

跟我一起写 Makefile.htm

2010年08月17日 1.02MB 下载

Make和makefile

2011年08月29日 71KB 下载

Makefile进阶 Makefile进阶

2011年05月06日 224KB 下载

makefile教程makefile教程

2010年08月23日 2.44MB 下载

makefile相关资料

2011年06月08日 328KB 下载

Makefile概述 Makefile概述

2009年04月10日 16KB 下载

makefile 教程 教学

2010年08月16日 199KB 下载

Makefile 跟我一起写Makefile

2018年03月17日 293KB 下载

没有更多推荐了,返回首页

不良信息举报

Makefile

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭