使你的工程脱离OpenCV安装环境及lib独立编译(源代码编译)
2014-07-23 00:49
309 查看
转自http://www.rosoo.net/a/201111/15324.html
以HMMDemo为例
1、将OpenCv安装目录下的cv、cvaux、otherlibs/highgui三个目录复制到你的工程目录下,再在工程目录下新建一个camera目录,将安装目录下的apps/Common目录中的两个文件复制至camera目录中。
2、在集成开发环境的项目管理窗口中(FileView)新建六个文件夹,分别为highgui_src,highgui_include,cvaux_include,cvaux_src,cv_include,cv_src
3、将项目管理窗口中Source Files中的Camera.cpp(如果有的话)及Header Files中的Camera.h(如果有的话)的路径改为工程目录下的camera目录。
4、 在项目管理窗口中右击cv_include项,选择Add Files to Folder...,将第1步中已复制至工程目录下的cv目录下的include目录中的.h文件添加到该项目管理文件夹中。接着按相同做法将cv目录下 的src目录中的.cpp文件添加到cv_src项目管理文件夹中。对cvaux_include、 cvaux_src,highgui_include,highgui_src亦如此操作。两点注意,第一是工程目录下的highgui目录下不再分 include和src,但操作相同;第二是为cvaux_src添加.cpp文件时不要添加cvaux.cpp,因为这个文件包括了cv.h,链接时会
有重复定义的错误。
5、右击cv_src,选择Setting...,选择C/C++页,在Category选择Precompiled Headers,再选择下面四个单选项中的第一项”Not using precompiled headers”。这样做的目的是不使用编译头文件,否则会产生“找不到文件结尾”的错误。也可以在每个.cpp文件的开头加入include ”stdafx.h”,但显然没有更改一个选项来得方便。对cvaux_src及highgui_src也进行相同操作。
6、为工程的编译编译选项(Project->Settings...->C/C++)增加/Zm200,作用是增加堆栈的最大限制,因为cvaux_src中有个文件用到了一个很大的常数数组,200不够大的可以300,400......。
7、 在Project->Settings...->C/C++中,选择Category中的Preprocessor项,把 Additional include directories改为cv/include,cv/src,highgui,camera,cvaux/include,cvaux/src
8、Project->Settings...->Link,如果Object/library modules中有cv.lib,cvaux.lib,highgui.lib,删除之。注意cvd.lib为Debug版,cv.lib为Release版。
9、 Project->Settings...->General,将Output directories下的两个框改为Debug,这个是中间文件(.obj等)的输出目录。 Project->Settings...->Link,将Output file name改为Debug/XXX.exe,这个是最终可执行文件的输出目录。
好了,你的项目已经可以脱离OpenCV安装环境编译了,编译出来的程序也可以脱离OpenCV的动态链接库运行了。
以HMMDemo为例
1、将OpenCv安装目录下的cv、cvaux、otherlibs/highgui三个目录复制到你的工程目录下,再在工程目录下新建一个camera目录,将安装目录下的apps/Common目录中的两个文件复制至camera目录中。
2、在集成开发环境的项目管理窗口中(FileView)新建六个文件夹,分别为highgui_src,highgui_include,cvaux_include,cvaux_src,cv_include,cv_src
3、将项目管理窗口中Source Files中的Camera.cpp(如果有的话)及Header Files中的Camera.h(如果有的话)的路径改为工程目录下的camera目录。
4、 在项目管理窗口中右击cv_include项,选择Add Files to Folder...,将第1步中已复制至工程目录下的cv目录下的include目录中的.h文件添加到该项目管理文件夹中。接着按相同做法将cv目录下 的src目录中的.cpp文件添加到cv_src项目管理文件夹中。对cvaux_include、 cvaux_src,highgui_include,highgui_src亦如此操作。两点注意,第一是工程目录下的highgui目录下不再分 include和src,但操作相同;第二是为cvaux_src添加.cpp文件时不要添加cvaux.cpp,因为这个文件包括了cv.h,链接时会
有重复定义的错误。
5、右击cv_src,选择Setting...,选择C/C++页,在Category选择Precompiled Headers,再选择下面四个单选项中的第一项”Not using precompiled headers”。这样做的目的是不使用编译头文件,否则会产生“找不到文件结尾”的错误。也可以在每个.cpp文件的开头加入include ”stdafx.h”,但显然没有更改一个选项来得方便。对cvaux_src及highgui_src也进行相同操作。
6、为工程的编译编译选项(Project->Settings...->C/C++)增加/Zm200,作用是增加堆栈的最大限制,因为cvaux_src中有个文件用到了一个很大的常数数组,200不够大的可以300,400......。
7、 在Project->Settings...->C/C++中,选择Category中的Preprocessor项,把 Additional include directories改为cv/include,cv/src,highgui,camera,cvaux/include,cvaux/src
8、Project->Settings...->Link,如果Object/library modules中有cv.lib,cvaux.lib,highgui.lib,删除之。注意cvd.lib为Debug版,cv.lib为Release版。
9、 Project->Settings...->General,将Output directories下的两个框改为Debug,这个是中间文件(.obj等)的输出目录。 Project->Settings...->Link,将Output file name改为Debug/XXX.exe,这个是最终可执行文件的输出目录。
好了,你的项目已经可以脱离OpenCV安装环境编译了,编译出来的程序也可以脱离OpenCV的动态链接库运行了。
相关文章推荐
- 使你的工程脱离OpenCV安装环境及lib独立编译(源代码编译)
- 在fedora15的环境下编译与安装opencv,并测试人脸检测程序
- opencv安装(WinXp平台下,Qt环境)笔记之一—编译动态链接库和静态链接库文件
- opencv在vc2010 express下环境搭建方法笔记+空白通用工程(已编译测试通过)(提供下载)
- linux中安装python科学计算环境-numpy、scipy、matplotlib、OpenCV...
- 【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译
- 在WdOS系统下源代码编译安装LNMP环境(Linux+Ngnix+Mysql+Php)
- 【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译
- 树莓派 安装 OpenCV 使用CMake 编译工程 最新版2015
- lnmp环境安装-源代码编译
- eclipse安装C++工程环境----CDT环境————eclipse开发openCV环境准备2
- Linux 环境中从源代码编译安装 ReText 问题与解决
- 【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译
- 【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译
- 利用Opencv 3.0源码 + Visual Studio 2013 在window7环境下编译lib及dll
- Ubuntu 11.10 源代码编译安装lamp环境
- Win7下PostgreSQL 9.3.2的安装、编译libpqxxx 4.0.1工程、测试连接代码
- 玩转Opencv源代码:生成Opencv工程解决方案与Opencv源码编译
- 【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译
- eclipse安装C++工程环境----CDT环境————eclipse开发openCV环境准备1