- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一个通用的makefile模板
篇一:通用Makefile模板及实例
1 通用Makefile——1
实现的功能:
?make——编译和连接程序
?make objs——编译程序,生成目标文件
?make clean——清除编译产生的目标文件(*.o)和依赖文件(*.d)
?make cleanall——清除目标文件(*.o)、依赖文件(*.d)和可执行文件(*.exe) ?make rebuild——重新编译连接程序,相当于make clean amp;amp; make
Usage:
Makefile源代码
# Gneric C/C++ Makefile
####################################################
PROGRAM :=
SRCDIRS :=
SRCEXTS :=
CPPFLAGS :=
CFLAGS :=
CFLAGS +=
CXXFLAGS :=
CXXFLAGS +=
LDFLAGS :=
LDFLAGS +=
SHELL = /bin/sh
SOURCES = $(foreach d,$(SRCDIRS),$(wildcard $(addprefix $(d)/*,$(SRCEXTS))))OBJS = $(foreach x,$(SRCEXTS),\
$(patsubst %$(x),%.o,$(filter %$(x),$(SOURCES))))
DEPS = $(patsubst %.o,%.d,$(OBJS))
.PHONY: all objs clean cleanall rebuild
all : $(PROGRAM)
%.d : %.c
@$(CC) -MM -MD $(CFLAGS) {1}lt;
%.d : %.C
@$(CC) -MM -MD $(CXXFLAGS) {1}lt;
objs : $(OBJS)
%.o : %.c
$(CC) -c $(CPPFLAGS) $(CFLAGS) {1}lt;
%.o : %.cpp
$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) {1}lt;
$(PROGRAM) : $(OBJS)
ifeq ($(strip $(SRCEXTS)),.c)
$(CC) -o $(PROGRAM) $(OBJS) $(LDFLAGS)
else
$(CXX) -o $(PROGRAM) $(OBJS) $(LDFLAGS)
endif
-include $(DEPS)
rebuild: clean call
clean:
@$(RM) *.o *.d
cleanall: clean
@$(RM) $(PROGRAM) $(PROGRAM).exe
2 通用Makefile——2
############################################################################### #
# Generic Makefile for C/C++ Program
#
# Author: whyglinux (whyglinux AT hotmail DOT com)
# Date:2006/03/04
# Description:
# The makefile searches in lt;SRCDIRS directories for the source files
# with extensions specified in lt;SOURCE_EXT, then compiles the sources
# and finally produces the lt;PROGRAM, the executable file, by linking
# the objectives.
# Usage:
#$ make compile and link the program.
#$ make objscompile only (no linking. Rarely used).
#$ make clean clean the objectives and dependencies.
#$ make cleanall clean the objectives, dependencies and executable.
#$ make rebuildrebuild the program. The same as make clean amp;amp; make all.
#=======
您可能关注的文档
最近下载
- 2024年上海杉达学院单招职业技能测试题库【word】.docx VIP
- 健康心理学课件.pptx VIP
- WDGL_VI_X线路录波装置说明书.pdf
- 培训课件--付国兵脏腑推拿现状及研究进展.ppt
- 广东省佛山市南海区2022届九年级模拟考试化学试卷.docx VIP
- 2024年中考英语高频词首字母默写与短语默写表及答案.pdf VIP
- 北京市海淀区2024-2025学年四年级上学期期末考试数学试题.pdf
- 辽宁省沈阳市三年(2021-2023)中考语文试卷分类汇编:文学类文本阅读(含解析).docx VIP
- (2025春新版本)部编版七年级语文下册全册教案.doc
- 黑布林阅读初一17《丹的村庄游乐会》中文版.docx
文档评论(0)