Makefile学习笔记系列2:一个简单的Makefile(增加子目录结构)
来源:互联网 发布:淘宝微淘官网首页 编辑:程序博客网 时间:2024/06/05 22:47
在Makefile学习笔记系列1:http://blog.csdn.net/u010312436/article/details/52461257的基础上,循环渐进的对makefile进行改写,因此系列2也只有一个makefile文件,子目录下没有子makefile。
首先还是来看下目录结构:
将系列1的相应文件放入相应名字的文件夹下。
Makefile代码:
XX = g++
CFLAGS = -g
CLIBS = -lpthread
INCLUDES = $(wildcard ./include/*.h ./sender/*.h ./receiver/*.h ./responser/*.h) # INCLUDE = a.h b.h ... can't be defined like "INCLUDE = ./*.h"
SOURCES = $(wildcard ./*.cpp ./sender/*.cpp ./receiver/*.cpp ./responser/*.cpp)
INCLUDE_DIRS = -I./include -I./sender/ -I./receiver/ -I./responser/ #指定头文件目录,代码中就不需要把头文件的完整路径写出来了
TARGET = mainApp
OBJECTS = $(patsubst %.cpp,%.o,$(SOURCES))
$(TARGET) : $(OBJECTS)
$(XX) $(CFLAGS) $^ -o $@ $(CLIBS)
$(OBJECTS) : %.o : %.cpp
$(XX) -c $(CFLAGS) $< -o $@ $(INCLUDE_DIRS)
.PHONY : clean
clean:
rm -rf $(TARGET) $(OBJECTS)
这里就不详细讲解makefile的各个变量代表什么意思了,这个makefile和系列1的区别是SOURCES变量不同,和添加了INCLUDE_DIRS变量。不一样的地方用红色标注出来了。相信应该很容易理解。
系列3将会为每个子目录添加makefile文件。
- Makefile学习笔记系列2:一个简单的Makefile(增加子目录结构)
- Makefile学习笔记系列3:具有子目录层次结构的makefile写法
- Makefile学习笔记系列1:一个简单的Makefile
- 制作一个遍历当前子目录的Makefile
- 一个遍历当前子目录的Makefile
- 为linux内核子目录里的makefile增加-g
- 一个简单的Makefile
- 一个简单的makefile
- 一个简单的Makefile
- 一个简单的makefile
- 一个简单的Makefile
- 一个简单的Makefile
- 一个简单的Makefile
- 一个简单的makefile
- 一个简单的Makefile
- 一个简单的Makefile
- 一个简单的makefile
- 一个简单的makefile
- 第2周项目1-C/C++语言中函数参数传递的三种方式
- ECMAScript6 Set和Map数据结构
- Sql servel 事物回滚一(XACT_ABORT 事物回滚)
- 微信支付集成第一次调用支付界面成功,以后调不起来支付界面返回-1,等微信支付问题。
- SSL单向/双向认证过程
- Makefile学习笔记系列2:一个简单的Makefile(增加子目录结构)
- Sql server事物回滚二(根据条件判断)
- 正则应用法则
- poj 1273 Drainage Ditches 网络流最大流入门 ford-fulkerson
- webscoket rfc6455 中文版链接
- 费马小定理
- 三种数组排序算法(冒泡排序、选择排序、插入排序、二分查找法)
- android listview 局部刷新
- mapreduce之shuffle原理