Makefile知识整理
来源:互联网 发布:矩阵结合律 编辑:程序博客网 时间:2024/06/08 09:24
Makefile内容总共分为5类,外加一些零散的知识,本章不包含自动依赖,自动依赖将在单独的文章中说明
1,显示规则
目标: 依赖
[TAB]命令
2,隐晦规则
%.o : %.c
[TAB]$(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@
把所有的[.c]文件都编译成[.o]文件.
作为模式规则的目标。不会被当做最终目标。
3,变量定义
变量定义
x=.........用等号定义一个变量
x:=.......用:=定义一个变量,好处是这种方法不能利用后定义的变量
x?=......如果x被定义过,这条语句什么也不做,如果没被定义则定义x 变量取值 $(x) 得到x的值
x = y
y = z
a := $($(x))
结果
a=z
模式变量
%.o : CFLAGS = -O 给所有.o文件加上模式-o
4,文件指示
5,注释
6,其他
6.1 指定Makefile文件 make -f MyMakefile
6.2 指定搜索路径 vpath <pattern> <directories> 如vpath %.h ../headers,指定.h文件到../headers目录中寻找
可以连续指定,搜索顺序和指定顺序相同,如
vpath %.c foo
vpath % blish
vpath %.c bar
6.3伪目标 .PHONY:xxxx声明一个xxxx的伪目标
6.4静态模式
<targets ...>: <target-pattern>: <prereq-patterns ...>
<commands>
<target>集合中都是以“.o”结尾的,而如果我们的<prereq-parrterns>定义成“%.c”,意思是对<target-parrtern>所形成的目标集进行二次定义,其计算方法是,取<target-parrtern>模式中的“%”(也就是去掉了[.o]这个结尾),并为其加上[.c]这个结尾,形成的新集合。
如 foo.o bar.o:%.o: %.c
$(CC) -c $(CFLAGS) $< -o $@
------------------------------------
参考 陈皓 跟我一起写Makefile
http://blog.chinaunix.net/u1/35065/showart_2311800.html makefile学习
- Makefile知识整理
- Makefile 知识整理
- makefile整理
- Makefile整理
- 知识整理
- 知识整理
- 知识整理
- makefile 的一些知识
- Makefile一些知识
- Makefile知识的记录
- Makefile相关知识
- makefile 的相关知识
- makefile中的一点知识
- Makefile 的相关知识
- makefile 相关知识
- Makefile 入门知识
- Makefile的入门知识
- Makefile相关知识
- 专业的LaTeX: 在Linux下编写高质量的文档
- 网络仿真软件的学习步骤
- JAVA数据库操作2(PreparedStatement对象)
- 调试和错误处理
- 五星红旗登上钓鱼岛——记曾经的热血青年
- Makefile知识整理
- ListView 内存溢出 减少内存使用
- Oracle用户权限分配的具体方法
- JAVA数据库操作3(CallableStatement对象)
- android 解压ZIP文件到 SD卡 , 创建数据连接
- 老妈要我翻译!
- 关于jQuery伪装链接地址的示例及说明
- IIS下部署PHP网站步骤
- JAVA数据库操作3(CallableStatement对象)