使用CMake生成VS2010项目查看OpenCV源代码

近期项目需要用到OpenCV中的几个函数,但其函数无法全部实现自己需要的功能,故而需要改进部分函数,为安全及效率起见,想参考OpenCV的源码来改进,这样节省时间的同时亦可提供代码的鲁棒性和通用性。那么如何查看OpenCV的源代码?在VS2010环境下,使用“Go to Definition”显然不能满足要求(OpenCV已被编译成LIB及DLL文件供调用),简单搜索了一下,得知可CMake导出OpenCV源码生成VC++项目,进入可查看源码,下面一步一步来达到此目的。

一、下载并安装CMake

CMake 是个开源的跨平台自动化建构系统,在下载页面上可下载源码及二进制可执行程序,我们只需要下载安装包即可,我的PC系统是Windows 7(32bit),所以我下载cmake-2.8.12.1-win32-x86.zip

下载完成后,解压到/cmake-2.8.12.1-win32-x86文件夹下,进入./bin目录,双击“cmake-gui.exe”启动CMake。

二、使用CMake生成VC++项目

1.  打开CMake后,界面如下图所示

 使用CMake生成VS2010项目查看OpenCV源代码

2.  填入相关信息

 使用CMake生成VS2010项目查看OpenCV源代码

如上图所示,①点击“Where is the source code”后面的那个“Browse Source...”按钮,选择OpenCV源文件的安装路径;②点击“Where to build the binaries”后面的那个“Browse Build...”按钮,选择CMake生成的工程文件所在的路径;③点击“Configure”转下一步。

3.  点击“Configure”按钮,配置编译平台

 使用CMake生成VS2010项目查看OpenCV源代码

如笔者的机器上安装的是VS2010,因此,就选择Visual Studio 2010。

4.  点击Finish按钮,开始配置

 使用CMake生成VS2010项目查看OpenCV源代码

界面上显示出现了错误,查看错误原因得知“Could not register CMake‘s Visual Studio macros file ‘CMakeVSMacros2.vsmacros‘ while Visual Studio is running. Please exit all running instances of Visual Studio before continuing.CMake needs to register Visual Studio macros when its macros file is updated or when it detects that its current macros file is no longer registered with Visual Studio.

百度一下,原来是因为VS2010相关路径设置里面包含了中文等相关字符,可参看解决CMake为VC准备生成文件时的Could not copy from不能复制问题中的解决方案,修改路径名为全英文的。

修改好后,再次点击Configure,这次成功了,如下所示:

 使用CMake生成VS2010项目查看OpenCV源代码

默认有的复选框没有选择,最好不要选择,因为库可能不全,从而导致生成失败,默认就好了。

5. 点击“Generate”按钮,进行生成。

 使用CMake生成VS2010项目查看OpenCV源代码

如上所示,最下面的消息框中显示配置完成,生成也完成了。

我们转到生成目录(…/OpenCV2.4.8VS2010),如下所示:

 使用CMake生成VS2010项目查看OpenCV源代码

OpenCV.sln便是我们需要的解决方案文件。至此,全部结束。

使用CMake生成VS2010项目查看OpenCV源代码

上一篇:生成解决方案时,无法导入以下密钥文件


下一篇:解决PHP在IE中下载文件,中文文件名乱码问题