我在编译OpenCV时遇到了问题。错误消息说我没有Eigen。但是,我的/ usr / local / include目录中有一个。另外,我用下面的选项运行CMake CMake的:
cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D CUDA_GENERATION=Auto USE_EIGEN=/usr/local/include/Eigen ..
编译OpenCV(通过make):
[ 75%] Building CXX object modules/contrib/CMakeFiles/opencv_contrib.dir/src/rgbdodometry.cpp.o
/home/gom7745/IR/opencv-2.4.11/modules/contrib/src/rgbdodometry.cpp:65:47: fatal error: unsupported/Eigen/MatrixFunctions: No such file or directory
# include <unsupported/Eigen/MatrixFunctions>
^
compilation terminated.
make[2]: *** [modules/contrib/CMakeFiles/opencv_contrib.dir/src/rgbdodometry.cpp.o] Error 1
make[1]: *** [modules/contrib/CMakeFiles/opencv_contrib.dir/all] Error 2
make: *** [all] Error 2
有没有人对此有任何想法?谢谢!
答案 0 :(得分:0)
这里cmake无法找到 unsupported / Eigen / MatrixFunctions 。首先找到Eigen的安装位置,在我的例子中它位于 / usr / local / include / eigen3 。现在找到你的rgbdodometry.cpp文件,就我而言,它位于 / opencv_contrib / modules / rgbd / src 中。打开cpp文件并使用类似
的内容修改上一行“的/ usr /本地/包含/ eigen3 /不支持/本征/ MatrixFunctions”
答案 1 :(得分:0)
使用-DWITH_EIGEN=OFF
构建它解决了我的问题。