Eigen3使用cmake配置的一个小坑

eigen3没有库,只有头文件

CMakeLists中如果这么写

find_package(Eigen3 REQUIRED)
message(STATUS "Eigen3_DIR = ${Eigen3_DIR}")
message(STATUS "EIGEN3_INCLUDE_DIRS = ${EIGEN3_INCLUDE_DIRS}")

则会打印如下信息

-- Eigen3_DIR = /usr/share/eigen3/cmake
-- EIGEN3_INCLUDE_DIRS = /usr/include/eigen3

/usr/share/eigen3/cmake/Eigen3Config.cmake是find_package()查找Eigen3库的依据,进入文件中可以看到如下,是没有库的信息的
在这里插入图片描述
然后在CMakeLists.txt中补充以下即可把头文件制定出来

include_directories(${
    
    EIGEN3_INCLUDE_DIRS})

当然,如果你不愿意用find_package()搜索的方法,也可以直接

include_directories(/usr/include/eigen3)

猜你喜欢

转载自blog.csdn.net/xxt228/article/details/131446589