Linux的通用makefile模板
来源:互联网 发布:淘宝客代理软件 编辑:程序博客网 时间:2024/05/16 04:20
# 下面的变量可以在shell 的环境变量里面指定。
# 也可以象下面这样在 Makefile 里面指定。
# CC=gcc # 编译器
# CFLAGS=-Wall -Werror -g # 编译器参数
# LD=gcc # 连接器参数
# LDFLAGS= $(LIBS) -lpthread # 连接器参数
# DEPENDFLAG=-MM # 生成依赖关系文件的参数
# INCLUDES=-Idir1 -Idir2 # 指明包含外部头文件的目录
# LIBS=-la -lb -lc # 指明引用外部的库文件
CFLAGS:=$(CFLAGS) $(INCLUDES)
LDFLAGS:=$(LDFLAGS) $(LIBS)
#指明项目中,包含源程序的所有的子目录。
SRCDIRS=.
#指明最终生成的可执行文件的名称
PROGRAMS=test.exe
#下面的部分一般不用改动
#从所有子目录中得到源代码的列表
SRCS=$(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.c))
#得到源代码对应的目标文件的列表
OBJS=$(SRCS:.c=.o)
#得到源代码对应的依赖关系文件的列表
#依赖关系文件就是一个目标文件依赖于
#哪些头文件和源程序,依赖关系是自动
#生成的,并且用include语句包含在Makefile中
DEPENDS=$(SRCS:.c=.d)
#指明默认目标是生成最终可执行文件。
all: $(PROGRAM)
#生成依赖关系文件
%.d:%.c
$(CC) $(DEPENDFLAG) $(CFLAGS) $< |/
sed "s?//(.*//):?$(basename $<).o $(basename $<).d :?g" /
> $@ || $(RM) $@
$(PROGRAMS): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(filter %.o ,$+)
# 包含入依赖关系文件
include $(DEPENDS)
# 删除生成的中间文件
clean:
rm $(OBJS) $(DEPENDS) $(PROGRAMS)
转载网址:http://blog.csdn.net/wubin1124/article/details/4334612
- Linux的通用makefile模板
- Linux的通用makefile模板
- Linux的通用makefile模板
- Linux的通用makefile模板
- linux 通用Makefile模板
- Linux 通用Makefile模板
- linux通用makefile模板
- linux下面简单通用的Makefile模板
- linux简单的通用Makefile模板
- 通用的makefile模板
- makefile的通用模板
- linux下通用Makefile模板
- Linux: makefile常用通用模板
- GNU/Linux通用Makefile模板
- Makefile的通用模板解析
- linux下makefile(通用模板)
- 一个简单的通用Makefile模板
- 一个C/C++通用的Makefile模板
- Linux下查看文件和文件夹大小
- SYSCALL_DEFINE含义
- tomcat 增加虚拟目录 列出隐藏本地文件
- ASP.NET中gridview获取当前行的索引值
- 黑马程序员——Java网络编程基础
- Linux的通用makefile模板
- 常用C语言标准库函数
- iOS Code Signing: 解惑
- 基本功练习_3_4_之strcpy函数和memcpy函数
- 初手必看之Nginx详细介绍
- 交叉编译Qt应用程序
- 在Galileo Eclipse中启动Tomcat后,http://localhost:8080/无法访问,但是独立启动Tomcat却完全正常的解决办法
- C语言复习之两种常用检索方式
- Java多线程:线程同步与关键字synchronized