一.第一种解决方法
cd /usr/share/ ,cmake tab补全,可以找到两个版本的cmake(cmake2.8和cmake3.5)
把/usr/share/cmake2.8/Modules/ 下的FindEigen3.cmake文件复制到cmake3.5对应目录下,即可解决
二.第二种解决方法
1、找到FindEigen3.cmake文件,/usr/share/cmake2.8/Modules
2、复制到自己这个的工程下
3、在工程的CMakeLists.txt里面。添加这句话:
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR})*******就是这句,加上就行了。这样cmake就会到你自己工程目录下去找FindEigen3.cmake了。 find_package(Eigen3) if(NOT EIGEN3_FOUND) # Fallback to cmake_modules find_package(cmake_modules REQUIRED) find_package(Eigen REQUIRED) set(EIGEN3_INCLUDE_DIRS ${EIGEN_INCLUDE_DIRS}) set(EIGEN3_LIBRARIES ${EIGEN_LIBRARIES}) # Not strictly necessary as Eigen is head only # Possibly map additional variables to the EIGEN3_ prefix. else() set(EIGEN3_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR}) endif()