一.第一種解決方法
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()