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秒之久.而现在 ...
- Linux-进程间通信(二): FIFO
1. FIFO: FIFO也被成为命名管道,因其通过路径关系绑定,可以用于任意进程间通信,而普通无名管道只能用于有共同祖先的进行直接通信; 命名管道也是半双工的,open管道的时候不要以读写方式打开, ...
- XML解析代码
import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.LinkedLi ...
- JavaScript ES6部分语法
ES6是JavaScript语言的新版本,它也可以叫做ES2015,之前学习的JavaScript属于ES5,ES6在它的基础上增加了一些语法,ES6是未来JavaScript的趋势,而且vue组件开 ...
- KVM(七)使用 libvirt 做 QEMU/KVM 快照和 Nova 实例的快照
本文将梳理 QEMU/KVM 快照相关的知识,以及在 OpenStack Nova 中使用 libvirt 来对 QEMU/KVM 虚机做快照的过程. 1. QEMU/KVM 快照 1.1 概念 QE ...
- tomcat并发优化
配置参考 <Connector port="9027" protocol="HTTP/1.1" maxHttpHeaderSize="8192& ...
- 一句话木马与caidao
实验吧有个试验环境:http://www.shiyanbar.com/experiment-course/experiment-course/vid/1812 菜刀的主要功能是用来连接一句话木马的,a ...
- 湖南师范大学2018年大学生程序设计竞赛新生赛 A 齐神和心美的游戏【hash】
[链接]:A [题意]:给你n个数的序列和k.判断是否可以三个数组成k(同一个数可以拿多次) [分析]:每个数vis记录一下.2层循环.两数之和不超过k以及剩下的数出现在序列中那么ok. [代码]: ...
- Linux命令之last
last [-num | -n num] [-f file] [-t YYYYMMDDHHMMSS] [-R] [-adioxFw] [username..] [tty..] last作用是显示近期用 ...
- 26、Django实战第26天:配置全局导航
1.编辑index.html,继承base.html 2.编辑base.html,根据是否登录不同显示 问题:当我们选中一个导航,选中样式并没有成为选中的状态 因此我们编辑base.html对导航中进 ...