Makefile文件编写
来源:互联网 发布:ff14暗之战士捏脸数据 编辑:程序博客网 时间:2024/06/18 17:05
前言
做项目需要在linux下编译文件,所以临时学习一下Makefile文件的编写,只了解了一些皮毛
代码
编译自己的代码所编写的Makefile文件如下:
INCLUDE_DIRS := ./ /usr/local/include /usr/includeLIBRARY_DIRS := /usr/local/lib /usr/libLIBRARIES := opencv_core opencv_imgproc opencv_highguiWARNINGS := -WallCXX:= /usr/bin/g++COMMON_FLAGS += $(foreach includedir,$(INCLUDE_DIRS),-I$(includedir))CXXFLAGS := -fPIC $(COMMON_FLAGS)LDFLAGS += $(foreach librarydir,$(LIBRARY_DIRS),-L$(librarydir)) $(foreach library,$(LIBRARIES),-1$(library))all : cnn_decode.bincnn_decode.bin : main.o net.o layer.o blob.o math_funtion.o $(CXX) -c cnn_decode.bin main.o net.o layer.o blob.o math_functions.o $(LDFLAGS) $(WARNINGS)main.o : main.cpp net.h $(CXX) -c main.cpp net.h $(CXXFLAGS) $(LDFLAGS) $(WARNINGS)net.o : net.cpp net.h $(CXX) -c net.cpp net.h $(CXXFLAGS) $(LDFLAGS) $(WARNINGS)layer.o : layer.cpp layer.h $(CXX) -c layer.cpp layer.h $(CXXFLAGS) $(LDFLAGS) $(WARNINGS)blob.o : blob.cpp blob.h $(CXX) -c blob.cpp blob.h $(CXXFLAGS) $(LDFLAGS) $(WARNINGS)math_functions.o : math_functions.cpp math_functions.h $(CXX) -c math_functions.cpp math_functions.h $(CXXFLAGS) $(LDFLAGS) $(WARNINGS).PHONY : cleanclean: -rm cnn_decode.bin main.o net.o layer.o blob.o math_functions.o
一些学习心得如下:
1、Makefile中的命令如果单独一行,要以tab键开头。
2、Makefile规则包含两部分:一个是依赖关系,一个是生成目标的方法。规则顺序很重要,因为Makefile中只应该有一个最终目标。
3、Makefile中的变量相当于C/C++中的宏,使用的时候$(变量名)。
4、四种赋值方式:
(1)= 递归赋值,Makefile展开后最后被指定的值
(2):= 非递归赋值,取决于在Makefile中的位置
(3) ?= 若没被赋值过则赋值
(4) += 添加等号后面的值
未完待续……
阅读全文
0 0
- 编写Makefile文件
- 编写Makefile文件
- Makefile文件编写简介
- 手动编写 Makefile文件
- 编写Makefile文件
- Makefile文件的编写
- makefile文件的编写
- Makefile文件的编写
- Makefile文件编写
- 手动编写 Makefile文件
- Makefile文件编写规则
- makefile文件编写
- makefile文件编写
- Makefile文件编写规则
- makefile文件的编写
- Makefile文件的编写
- Makefile文件编写规则
- Makefile文件编写详解
- 目标跟踪算法小结(三)
- HibernateⅠ 入门
- 链栈学习及运用笔记
- linux环境下导出导入oracle的dmp文件。(exp,imp)
- Vue key的作用
- Makefile文件编写
- Java数组
- 集合
- 计算机常用算法对照表整理
- hibernate一级缓存,二级缓存,查询缓存
- python组合数据类型--列表
- linux定时任务的设置
- mysql主从同步(4)-Slave延迟状态监控
- tensorflow 学习笔记3 placeholder与激活函数