makefile opencv的案例
CXX = g++
LIBS +=`pkg-config --libs opencv`
INC +=`pkg-config --cflags opencv`
CPPFLAGS += -g -std=c++ -Wall SRCS = detect.cpp
TARGET = detect
OBJS = detect.o $(TARGET):$(OBJS)
$(CXX) $(INC) $(CPPFLAGS) $(OBJS) -o $(TARGET) $(LIBS)
$(OBJS):%.o:%.cpp
$(CXX) $(INC) $(CPPFLAGS) -c $< -o $@ .PHONY:clean
clean:
rm -r *.o $(TARGET)
CXX = g++
LDLIBS += `pkg-config --libs opencv`
INC += `pkg-config --cflags opencv`
CPPFLAGS += -g -std=c++ -Wall -I./ TARGET = edges
OBJS = edges.o label.o
SRCS = edges.cpp label.cpp
HEAD = label.hpp $(TARGET):$(OBJS)
$(CXX) -o $(TARGET) $(OBJS) $(LDLIBS) %.o:%.c $(HEAD)
$(CXX) $(INC) $(CPPFLAGS) -c $> -o $@ .PHONY:clean
clean:
rm -r *.o
CXX = g++
INC += `pkg-config --cflags opencv`
LIBS += `pkg-config --libs opencv` #dir
DIR_INC = ./include
DIR_SRC = ./src
DIR_OBJ = ./obj
DIR_BIN = ./bin CPPFLAGS += -g -std=c++ -Wall -I${DIR_INC} #SRC = $(wildcard ${DIR_SRC}/*.cpp)
SRC1 = ${DIR_SRC}/detect.cpp ${DIR_SRC}/tools.cpp
OBJ1 = $(patsubst %.cpp,${DIR_OBJ}/%.o,$(notdir ${SRC1}))
BIN_TARGET1 = ${DIR_BIN}/detect SRC2 = ${DIR_SRC}/detect2.cpp ${DIR_SRC}/tools.cpp
OBJ2 = $(patsubst %.cpp,${DIR_OBJ}/%.o,$(notdir ${SRC2}))
BIN_TARGET2 = ${DIR_BIN}/detect2 SRC3 = ${DIR_SRC}/detect_circle.cpp ${DIR_SRC}/tools.cpp
OBJ3 = $(patsubst %.cpp,${DIR_OBJ}/%.o,$(notdir ${SRC3}))
BIN_TARGET3 = ${DIR_BIN}/detect_circle SRC4 = ${DIR_SRC}/detect_circle2.cpp ${DIR_SRC}/tools.cpp
OBJ4 = $(patsubst %.cpp,${DIR_OBJ}/%.o,$(notdir ${SRC4}))
BIN_TARGET4 = ${DIR_BIN}/detect_circle2 SRC5 = ${DIR_SRC}/hog_svm_test.cpp ${DIR_SRC}/tools.cpp
OBJ5 = $(patsubst %.cpp,${DIR_OBJ}/%.o,$(notdir ${SRC5}))
BIN_TARGET5 = ${DIR_BIN}/hog_svm_test SRC6 = ${DIR_SRC}/hog_svm_test2.cpp ${DIR_SRC}/tools.cpp
OBJ6 = $(patsubst %.cpp,${DIR_OBJ}/%.o,$(notdir ${SRC6}))
BIN_TARGET6 = ${DIR_BIN}/hog_svm_test2 SRC7 = ${DIR_SRC}/hog_svm_test2.cpp ${DIR_SRC}/tools.cpp
OBJ7 = $(patsubst %.cpp,${DIR_OBJ}/%.o,$(notdir ${SRC7}))
BIN_TARGET7 = ${DIR_BIN}/hog_svm_test3 detect:${BIN_TARGET1} detect2:${BIN_TARGET2} detect_circle:${BIN_TARGET3} detect_circle2:${BIN_TARGET4} hog_svm_test:${BIN_TARGET5} hog_svm_test2:${BIN_TARGET6} hog_svm_test3:${BIN_TARGET7} # echo:
# echo $(OBJ1)
# echo $(BIN_TARGET)
# echo $(notdir ${SRC1}) ${BIN_TARGET1}:${OBJ1}
$(CXX) -o $@ $(OBJ1) $(LIBS) ${BIN_TARGET2}:${OBJ2}
$(CXX) -o $@ $(OBJ2) $(LIBS) ${BIN_TARGET3}:${OBJ3}
$(CXX) -o $@ $(OBJ3) $(LIBS) ${BIN_TARGET4}:${OBJ4}
$(CXX) -o $@ $(OBJ4) $(LIBS) ${BIN_TARGET5}:${OBJ5}
$(CXX) -o $@ $(OBJ5) $(LIBS) ${BIN_TARGET6}:${OBJ6}
$(CXX) -o $@ $(OBJ6) $(LIBS) ${BIN_TARGET7}:${OBJ7}
$(CXX) -o $@ $(OBJ7) $(LIBS) ${DIR_OBJ}/%.o:${DIR_SRC}/%.cpp
$(CXX) $(CPPFLAGS) -c $< -o $@ .PHONY:clean
clean:
find ${DIR_OBJ} -name *.o -exec rm -rf {} \;
makefile opencv的案例的更多相关文章
- makefile与动态链接库案例分析——动态库链接动态库
http://blog.csdn.net/huqinwei987/article/details/50517780 背景:效率考虑,要重用把服务器主备机方案,以库Libmdpha(高可用)的形式加进主 ...
- OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建
# OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建 [-= 博客目录 =-] 1-学习目标 1.1-本章介绍 1.2-实践内容 1.3-相关说明 2-学习过程 2.1-hom ...
- 解决 yolov3: Demo needs OpenCV for webcam images
默认情况下yolo的Makefile文件有个配置OPENCV=0,你需要将它改成 0 ,然后重新make 编译make 编译就会启用 opencv,此时你需要在你的电脑上安装opencv 才可以 修改 ...
- Makefile 描述的是文件编译的相关规则,它的规则主要是两个部分组成,分别是依赖的关系和执行的命令 PHONY伪目标实践
Makefile的工作流程 http://c.biancheng.net/view/7091.html Makefile文件是什么? 我们教程主要是讲的是 Makefile .很多 Linux(Uni ...
- opencv-Python---动态人脸捕捉
本章重点内容: 1.python写人脸识别 2.选择OpenCv框架 案例1 导入图片并打开显示 思路:1.导入库 2.加载图片 3.创建窗口 4.显示图片 5.暂停窗口 6.关闭窗口 #1.导入库 ...
- OpenCV2.3.1在CentOS6.5下的安装
安装的linux版本号是centos6.5.选择的是opencv2.3.1.不是非常新的版本号. 由于在安装opencv2.4.9的时候.make的过程中出现了问题. 一:安装依赖包 依赖包用yum安 ...
- Github开源人脸识别项目face_recognition
Github开源人脸识别项目face_recognition 原文:https://www.jianshu.com/p/0b37452be63e 译者注: 本项目face_recognition是一个 ...
- makefile for opencv
makefile #################################################### # Generic makefile - 万能Makefile # for ...
- opencv的CMakeLists.txt与makefile写法
opencv的CMakeLists.txt cmake_minimum_required(VERSION 2.8) project(my_run_name) find_package(OpenCV R ...
随机推荐
- [Shell] shell 脚本循环恢复的问题
在一个shell脚本中,我大概执行了如下一个脚本: ...} do ...} do ...} do done done done 假设上面的sleep 10秒就是代表我的程序需要执行10秒之久.而现在 ...
- UVALIVE 4330 Timer
Description Recently, some archaeologists discovered an ancient relic on a small island in the Pac ...
- python数据类型-----字符串
今天来总结下python3.4版本字符串的一些操作方法,对这些方法先作一个简单的分类,按照分类来进行总结. Sequence Typessequence类型有六种:strings, byte sequ ...
- 【C++】默认构造函数
参考文献: 1.黄邦勇帅 2.http://www.cnblogs.com/graphics/archive/2012/10/02/2710340.html 3.http://blog.csdn.ne ...
- python的算法:二分法查找(2)--bisect模块
Python 有一个 bisect 模块,用于维护有序列表.bisect 模块实现了一个算法用于插入元素到有序列表.在一些情况下,这比反复排序列表或构造一个大的列表再排序的效率更高.Bisect 是二 ...
- 如何在qt中使用中文输入法
参考: http://blog.csdn.net/u013812682/article/details/52101088 dpkg -L fcitx-frontend-qt5 到qt安装目录里find ...
- redis使用管道pipeline提升批量操作性能(php演示)
Redis是一个TCP服务器,支持请求/响应协议. 在Redis中,请求通过以下步骤完成: 客户端向服务器发送查询,并从套接字读取,通常以阻塞的方式,用于服务器响应. 服务器处理命令并将响应发送回客户 ...
- Redis数据类型的常用API以及使用场景
一.通用命令 1.keys 遍历出所有的key 一般不在生产环境使用 2.dbsize key的总数 3.exists key 4.del key 删除指定key-value 5.expire k ...
- 常用的WebService一览表
天气预报Web服务,数据来源于中国气象局Endpoint :http://www.webxml.com.cn/WebServices/WeatherWebService.asmxDisco ...
- HDU 1060 Leftmost Digit (数论,快速幂)
Given a positive integer N, you should output the leftmost digit of N^N. InputThe input contains se ...