CMake Error: not providing "FindEigen3.cmake" in CMAKE_MODULE_PATH


 

一.第一種解決方法

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()

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM