makefile优化
来源:互联网 发布:右下角没有网络按钮 编辑:程序博客网 时间:2024/05/12 10:34
根据《跟我写makefile》写出了下面的makefile文件:
object = main.o file1.o file2.o file3.o
CC = arm-linux-gcc
main: $(object)
$(CC)-o main $(object) -lpthread –Wall
main.o: main.c main.h file1.h file2.h file3.h
$(CC)-c main.c
file1.o:file1.c file1.h
$(CC)-c file1.c
file2.o: file2.c file2.h file1.h
$(CC)-c file2.c
file3.o: file3.c file3.h
$(CC)-c file3.c
.PHONY : clean
clean:
-rmmain $(object)
优化后的makefile:
#产生一个所有以 '.c' 结尾的文件的列表
SOURCES = $(wildcard *.c)
#匹配替换,有三个参数。第一个是一个需要匹配的式样,第二个表示用什么来替换它,第
#三个是一个需要被处理的由空格分隔的列表, 此处就是表示把文件列表SOURCES中所有
#的.c字符变成.o,形成一个新的文件列表,然后存入OBJS变量中。
OBJS = $(patsubst %.c, %.o, $(SOURCES))
CC = arm-linux-gcc
CFLAGS = -lpthread -Wall
TARGET = ./main
#把所有的.c文件编译成.o文件。 $<:扩展成依赖列表中的第一个依赖文件
#$@ :扩展成当前规则的目的文件名
%.o:%.c
$(CC)-c $< -o $@
$(TARGET) : $(OBJS)
$(CC) -o $(TARGET) $(OBJS) $(CFLAGS)
.PHONY : clean
clean:
-rmmain $(OBJS)
优化过程参考了转载的文档《makefile例子》:http://blog.csdn.net/autowanglei/article/details/11079625
- makefile优化
- Makefile使用,Makefile的优化全过程
- 关于gcc优化和makefile
- Linux Makefile 优化编译速度
- 优化makefile,提高团队开发效率
- 优化后的makefile模板替换
- AB1601 Makefile钟优化的问题
- Caffe 安装优化版 (CPU anaconda) 附Makefile.config
- Makefile
- Makefile
- makefile
- makefile
- makefile
- Makefile
- Makefile
- Makefile
- Makefile
- Makefile
- 开学了
- C#输出DataTable数据到Excel文件
- HTML5 应用程序缓存
- [C++] Expression : invalid operator < 解决方法
- vc中xml节点调用了put_text(BSTR*),该节点内容全部被删除,只剩下put_text插入的文字
- makefile优化
- 开源OCR引擎Tesseract
- Android工程目录介绍
- 编写函数,从一个字符串中按字节数截取一部分,但不能截取出半个中文(GBK码表),两种方法的比较。
- 安卓开发中Android消息机制详解
- Vim常用插件及其安装
- 解决微信开放平台分享图片失败问题
- ArrayList元素移除需要注意的问题
- .net Delegate 实现异步调用