我尝试在Raspberry Pi 2B上构建OpenCV 3.1.0。不幸的是,当我尝试时:
cmake -D CMAKE_BUILD_TYPE = RELEASE \ -D CMAKE_INSTALL_PREFIX = / usr / local \ -D INSTALL_C_EXAMPLES = OFF \ -D INSTALL_PYTHON_EXAMPLES = OFF /home/pi/Downloads/opencv-3.1.0
它给了我一个错误:(:
CMake错误:来源" /home/pi/Downloads/opencv-3.1.0/CMakeLists.txt"与来源不匹配" /home/pi/Downloads/opencv-3.1.0/modules/CMakeLists.txt"用于生成缓存。使用不同的源目录重新运行cmake。
我想将OpenCV与C ++和Code :: Bocks一起使用,我已经安装了它。 我无法在互联网上找到任何解决方案,所以如果smb帮助我,我将非常高兴。 :)忘了说我使用Raspbian Jezzy。
答案 0 :(得分:10)
首先,我希望你在一个单独的目录中运行CMake 在之外的源代码。不这样做真的不推荐
要了解错误消息,您必须了解一下CMake的工作原理。
基本上,当你运行
时cd /path/to/opencv
mkdir build
cd build
cmake ..
CMake在build dir中生成一个缓存(它是一个名为CMakeCache.txt
的简单文件)。此文件包含一些信息,如:
如果您重新运行CMake并更改其中一个值,(通过使用不同的参数重新运行cmake,设置其他generotor或移动文件),CMake会抱怨此类消息。
然后一个好的解决方案是删除CMakeCache,甚至整个构建目录是安全的。
答案 1 :(得分:3)
原因是您使用了两个版本的cmake来生成Makefile。
cd /path/to/opencv
rm -rf build
mkdir build
cd build
cmake ..
这将是正常的。