我已经环顾了很长时间,试图安装 openCV。我正在使用 Windows 7、VS2010 C# Express 和 cmake 2.8.8。对于在线找到的所有教程,只需指定源代码路径(理解为提取 opencv 文件夹的路径),然后指定二进制文件路径(理解为构建 openCV 源代码的位置,可能是新目录)。问题是在填充源代码和二进制文件的路径后,点击“配置”错误
“cmake 错误:配置文件出错。项目文件可能无效”
发生。有关更详细的错误日志,显示如下:
CMake 错误:无法打开文件进行写入:C:/Program Files (x86)/opencv/build/CMakeCache.txt.tmp CMake 错误:CMake 无法找到与“Visual Studio 10”对应的构建程序。CMAKE_MAKE_PROGRAM 未设置。您可能需要选择不同的构建工具。CMake 错误:找不到 cmake 模块文件:C:/Program Files (x86)/opencv/build/CMakeFiles/CMakeCXXCompiler.cmake CMake 错误:找不到 cmake 模块文件:C:/Program Files (x86)/opencv/build /CMakeFiles/CMakeCCompiler.cmake 配置不完整,出现错误!CMake 错误:无法打开文件进行写入:C:/Program Files (x86)/opencv/build/CMakeCache.txt.tmp CMake 错误::系统错误:权限被拒绝 CMake 错误:无法打开缓存文件进行保存。C:/Program Files (x86)/opencv/build/CMakeCache.txt CMake 错误::系统错误:权限被拒绝 CMake 错误::系统错误:没有这样的文件或目录 CMake 错误:无法打开缓存文件进行保存。C:/Program Files (x86)/opencv/build/CMakeCache.txt CMake Error: : System Error: No such file or directory
我从网上消化的猜测是cmake和opencv可能不兼容(cmake安装为x86;opencv安装为x64bit),因此我重新下载了32位版本的openCV(虽然我在64位电脑上运行)但是仍然没有进展(它仍然不会配置导致错误)。这是我安装的一个(以win32为后缀)供参考http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.1/。
值得一提的是,在提取 openCV 时出现了大量“无法打开文件……”消息(例如,“无法打开输出文件目录位于此处\opencv_objdetect240.dll”)。这似乎适用于所有文件(据我所知,在提取时几乎在每一行中都重复了该错误,对于每行不同的文件)。
这是我第一次接触 cmake,因此对这些步骤并不熟悉。我发现了一些针对“CMakeLists.txt”(已包含在提取的文件夹中)的说明,但没有完全理解它们。一个相当详细的参考是http://thebitbangtheory.wordpress.com/2011/10/24/how-to-use-cmake-with-opencv/。但是我觉得步骤不够详细(即步骤 3-6)。对于像我这样的 cmake 新手来说,歧义是“项目”所指的,这不是一次就能够编译所有包含 opencv 的 C# 项目吗?
在上述背景下的所有情况下,问题是:如何将 openCV 安装到 VS2010 C#,克服 cmake 配置错误(或者如何修复此类错误)?
笔记:
- 我没有可靠地记录初步错误的确切措辞(在重新提取 32 位版本之前),但据我所知,这是目前发生的,上面引用的那个。
- 我意识到有一个类似标题的问题(cmake 错误:配置文件中的错误。项目文件可能无效);但是答案似乎不符合给定的情况;再说一次,我可能是错的。
非常感谢您的宝贵时间。