Study Linux- Makefile编写
2013-07-15 20:48
127 查看
1. 基本概念
Makefile文件描述了整个工程的编译,链接等规则。
格式:
targets(目标) :prerequisites(依赖)
command(命令)
例: main.o : main.c
gcc -c main.c
在Makefile中,规则的顺序很重要,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来的。Makefile中第一条规则中的目标将被确立为最终目标。
make命令默认在当前目录下寻找名字为makefile或者Makefile的工程文件,当名字不为这两者之一时,可以使用如下方法指定:
make -f 文件名
2. 伪目标
Makefile中把那些没有任何依赖只有执行动作的目标称为“伪目标”。
例如:
clean:
rm -f hello main.o func1.o func2.o
3. 变量
在makefile中,存在系统默认的自动变量
$^ :代表所有的依赖项文件
$@:代表目标
$< :达标第一个依赖文件
例1:
hello:main.o func1.o func2.o
gcc main.o fun.o func2.o -o hello
=》
hello: main.o func1.o func2.o
gcc $^ -o $@
例2:
OBJS= main.o fun.o
CC=gcc
CFLAGS=-c
main:$(OBJS)
$(CC)
$(OBJS) -o
main
main,o: main.c fun.h
$(CC)
$(CFLAGS) main.c
-o main.o
fun.o: fun.c fun.h
$(CC)
$(CFLAGS) fun.c
-o fun.o
clean:
rm -f
main *.o
例3:
OBJS= main.o fun.o
CC=gcc
CFLAGS=-c
main: $(OBJS)
$(CC)
$^ -o $@
main.o: main.c fun.h
$(CC)
$(CFLAGS) $<
-o $@
fun.o: fun.c fun.h
$(CC)
$(CFLAGS) $<
-o $@
clean:
rm -f
main *.o
Makefile文件描述了整个工程的编译,链接等规则。
格式:
targets(目标) :prerequisites(依赖)
command(命令)
例: main.o : main.c
gcc -c main.c
在Makefile中,规则的顺序很重要,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来的。Makefile中第一条规则中的目标将被确立为最终目标。
make命令默认在当前目录下寻找名字为makefile或者Makefile的工程文件,当名字不为这两者之一时,可以使用如下方法指定:
make -f 文件名
2. 伪目标
Makefile中把那些没有任何依赖只有执行动作的目标称为“伪目标”。
例如:
clean:
rm -f hello main.o func1.o func2.o
3. 变量
在makefile中,存在系统默认的自动变量
$^ :代表所有的依赖项文件
$@:代表目标
$< :达标第一个依赖文件
例1:
hello:main.o func1.o func2.o
gcc main.o fun.o func2.o -o hello
=》
hello: main.o func1.o func2.o
gcc $^ -o $@
例2:
OBJS= main.o fun.o
CC=gcc
CFLAGS=-c
main:$(OBJS)
$(CC)
$(OBJS) -o
main
main,o: main.c fun.h
$(CC)
$(CFLAGS) main.c
-o main.o
fun.o: fun.c fun.h
$(CC)
$(CFLAGS) fun.c
-o fun.o
clean:
rm -f
main *.o
例3:
OBJS= main.o fun.o
CC=gcc
CFLAGS=-c
main: $(OBJS)
$(CC)
$^ -o $@
main.o: main.c fun.h
$(CC)
$(CFLAGS) $<
-o $@
fun.o: fun.c fun.h
$(CC)
$(CFLAGS) $<
-o $@
clean:
rm -f
main *.o
相关文章推荐
- 编写makefile生成.ko
- Makefile 的编写过程(实践)
- Makefile编写----实例展示
- makefile文件的编写
- 自学编写Makefile之1 —— GNU Autotools工具介绍
- 一个通用Makefile的编写
- GNU的makefile文件编写说明
- Makefile的编写
- Window简单makefile的编写
- 简单 使用 的makefile编写 框架
- Linux下多目录的Makefile编写
- 自行编写的Makefile文件的结构
- Linux makefile 编写详细教程,浅显易懂
- Linux下C语言开发(Makefile编写)
- 通俗讲解Makefile编写方法<4>
- makefile编写_简单
- Makefile构建工程设计——工程构建与编写规则
- Linux内核编程:从hello world 开始-(2)_Makefile文件编写
- makefile的编写
- 1.编写一个简单的C语言程序:计算输入多个整数的平均值,并将此程序分割成多个小文件。 2.为第1题中的程序编写makefile文件,用make编译后改成返回最小值,再编译,观察有多少文件不需要重新