写篇入门级别的文章,对于配置OpenCV很多人不知道有这种方法,其实这种方法在OpenCV编译过程中已经使用到的了,如果有手动编译OpenCV经验的同学可以很快的学会这种工程管理方法

方法优点,只要有源代码,跨操作系统什么的都是分分钟的事,废话不多说,下面开始(本文以图为主)

第一步:你要有个Cmake,这个倒网上下一个就行,Linux和Mac下有命令行版本也有界面版本的,Windows下主要使用界面版本的

第二步:需要一个cMakeLists.txt 的脚本文件:

######## A simple cmakelists.txt file for OpenCV() #############
cmake_minimum_required(VERSION 2.8) # 初始化Cmake版本检测
PROJECT(Depth_Segment) # 工程名 FIND_PACKAGE( OpenCV REQUIRED ) # 环境变量中寻找OpenCV的库的位置
INCLUDE_DIRECTORIES(${Depth_Segment_SOURCE_DIR} # 将目录下的头文件加入到工程
"C:/OpenCV2411/include/opencv" # 这里写头文件的位置,linux下不需要
"C:/OpenCV2411/include/opencv2" # 这里写头文件的位置,linux下不需要
) ADD_EXECUTABLE(Depth_Segment main.c) # 将文件加入工程,有多少.c或者cpp都加进去
TARGET_LINK_LIBRARIES (Depth_Segment ${OpenCV_LIBS}) # 这两行的次序也不能变!加入动态链接库
# ########## end ####################################

部分已经给出了注释,下面开始生成工程文件。

在生成工程之前,先说下文件结构

---src

| ---main.c

| ---cMakeLists

---bin

| ----工程文件

第三步:开始使用Cmake:

成功,工程文件生成完成:

OpenCV使用Cmake来管理工程的更多相关文章

  1. 利用CMake和OpenCV源代码生成Visual Studio工程

    OpenCV1.0版本有windows,linux之分,笔者曾经一直使用Opencv1.0.这个版本在下载,安装之后,在 \OpenCV\_make文件夹下面已经存在了一个opencv.dsw的工程文 ...

  2. OpenCV+Qt+CMake安装+十种踩坑

    平台:win10 x64+opencv-3.4.1 + qt-x86-5.9.0 + cmake3.13.4 x64 OpenCV+Qt+CMake安装,及目前安装完后打包:mingw32-make时 ...

  3. 【经验分享】win10 cmake 构建 Tengine 工程

      欢迎关注我的公众号 [极智视界],回复001获取Google编程规范   O_o   >_<   o_O   O_o   ~_~   o_O   本教程详细记录了在 win10 环境中 ...

  4. 使用cmake自动构建工程

    公司引擎是用cmake根据目标平台来构建工程的,刚接触的时候深深体会到cmake的方便:如果目标平台是windows,它可以帮你自动构建出vs工程:如果是安卓,自动构建出eclipse工程,如果是IO ...

  5. 怎样使用projectproperty sheet(.vsprops)来管理工程

    怎样使用projectproperty sheet(.vsprops)来管理工程 IDE:VS2005 前言 Project Property Sheet的意思是项目属性表,在大型项目中基本上都会使用 ...

  6. OpenCV使用CMake和MinGW的编译安装

    官方教程:https://wiki.qt.io/How_to_setup_Qt_and_openCV_on_Windows 软件环境: Qt:5.11 CMake-3.14.4 OpenCV-4.1. ...

  7. CMake生成VS2010工程相对路径和绝对路径问题说明

    CMake生成VS2010工程相对路径和绝对路径问题说明 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 主要是使用CMake生成的VS2010的工程,最好不 ...

  8. ubuntu下,VSCode采用cmake编译C++工程

    首先在VSCode中下载CMake和CMake Tools两个插件. 选中CMake Tools,可以看到在VSCode中如何使用cmake编译C++工程的教程. 官网教程 最重要且最实用,看这个网址 ...

  9. Qt Creator 源码学习笔记03,大型项目如何管理工程

    阅读本文大概需要 6 分钟 一个项目随着功能开发越来越多,项目必然越来越大,工程管理成本也越来越高,后期维护成本更高.如何更好的组织管理工程,是非常重要的 今天我们来学习下 Qt Creator 是如 ...

随机推荐

  1. RESTful、共用接口、前后端分离、接口约定的实践 (转)

    出处:  某小公司RESTful.共用接口.前后端分离.接口约定的实践 前言 随着互联网高速发展,公司对项目开发周期不断缩短,我们面对各种需求,使用原有对接方式,各端已经很难快速应对各种需求,更难以提 ...

  2. java——HashSet类中的常见方法

    package com.xt.set; import java.util.HashSet; import java.util.Iterator; import java.util.Set; publi ...

  3. ETL测试或数据仓库测试入门

    概述 在我们学习ETL测试之前,先了解下business intelligence(即BI)和数据仓库. 什么是BI? BI(Business Intelligence)即商务智能,它是一套完整的解决 ...

  4. JS基础_对象的简介、对象的基本操作

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  5. wpf GeometryDrawing 绘制文字

    <GeometryDrawing x:Key="GeometryDrawingText"> <GeometryDrawing.Geometry> <R ...

  6. qt tableview使用

    Qt::CheckState checkSibling(QStandardItem * item); void treeItem_checkAllChild(QStandardItem * item, ...

  7. django 中间键重定向

    1,定义和注册中间件 在注册的中间件中使用: from django.http import HttpResponseRedirect '''下面的书写方法会陷入死循环,所以必须加判断条件只调用一次' ...

  8. HTML5之动画优化(requestAnimationFrame)

    定时器setInterval实现的匀速动画为什么不是匀速? window.requestAnimationFrame() 一.定时器setInterval实现的匀速动画为什么不是匀速? 以上提问并非通 ...

  9. 关于学习电信nb-iot的小结

    关于这几天对nb-iot的学习的总结和遇到的坑 初步学习nb-iot,了解到了nb-iot对于传感器数据传输功能的强大: 废话不多说,对于nb-iot我们选择的有人的模块,选择B5频段也就是电信的nb ...

  10. Java基础——2 操作符