VS下用CMake编译OpenCV程序

 

想用CMake编译OpenCV的初衷是。。。

不知道由于什么情况,在自己的笔记本上写的OpenCV程序在实验室台式机上编译不过,反之亦然,在台式机上写的也不能在笔记本上跑。

然后每次重新建立工程什么的也很不开心。

所以。。据别人说用CMake编译很方便。所以就。。。

 

有多方便呢,只要有一个CMakeLists.txt(这名字不能变)和一个MyCVProject.cpp(这名字随便起)。

然后用CMake编译,工程就自己生成了。

建议先自己编译一个HelloWorld开心一下。

方法:http://blog.163.com/jacky_ling0/blog/static/1373925712011072375418/

 

好吧,下面说说OpenCV。

 

我用的是VS2008.

如果想用CMake编译OpenCV,首先在安装OpenCV的时候就有一点点不太一样。

OpenCV中文网站有介绍:

http://www.opencv.org.cn/index.php/VC_2008_Express%E4%B8%8B%E5%AE%89%E8%A3%85OpenCV2.3.1

安装过程我记得有一些细节需要注意:比如Path环境变量之间用分号;隔开,并且不要不小心包含了多余的空格。

 

比如我的源文件叫MyCVProject.cpp,我要生成的工程和可执行文件叫Threshold。

CMakeLists.txt里面的内容如下:

cmake_minimum_required(VERSION 2.6)

PROJECT(Threshold)
FIND_PACKAGE(OpenCV REQUIRED )
INCLUDE_DIRECTORIES( ${OPENCV_INCLUDE_DIR} )
ADD_EXECUTABLE(Threshold MyCVProject.cpp)
TARGET_LINK_LIBRARIES(Threshold ${OpenCV_LIBS})

 

之后所有的程序都可以用这个文件,只需要改一下这个里面相应的源文件名字还有你喜欢的工程名,可执行文件名等即可,其他部分都不用改。

 

此处还可参考:http://hi.baidu.com/azhw/blog/item/9527ac34a5abf5a9d0a2d3cf.html

 

然后利用CMake编译:Configure,然后Generate。

在指定的路径就出现了想要的项目。里面有三个工程。分别是:ALL_BUILD;Threshold;ZERO_CHECK。

(这里介绍过了:

http://blog.163.com/jacky_ling0/blog/static/1373925712011072375418/

需要右键把自己的那个工程(此处是Threshold)设为启动项目,然后运行即可。

其他两个项目不想要的时候可以右键移除。

 

 

 

posted @ 2012-07-16 20:06  圣骑士wind  阅读(21595)  评论(1编辑  收藏  举报