1、Eigen 源码安装后所在位置
说明:Eigen
使用源码(build, cmake)安装后的eigen3文件夹
一般是被安装在 /usr/local/include
位置。
因为eigen3
被默认安装到了usr/local/include
里了(或者是usr/include
里,这两个都差不多,都是系统默认的路径,但主要是usr/local/include
里),在很多程序中include
时经常使用#include <Eigen/Dense>
而不是使用#include <eigen3/Eigen/Dense>
,编译时就会出现报错找不到Eigen
头文件的情况,一些程序在编译时会因找不到Eigen/Dense
而报错。所以要将usr/local/include/eigen3
文件夹中的Eigen文件递归地复制到上一层文件夹(直接放到/usr/local/include
中,否则系统无法默认搜索到 -> 此时只能在CMakeLists.txt用include_libraries(绝对路径了))
2、解决方法:
在头文件使用时:
如果是在头文件当中引用,则有两种方式:
1、 使用 #include <eigen3/Eigen/Dense>
而不使用 #include <Eigen/Dense>
2、 要么就将Eigen文件复制到 include目录下,
sudo cp -r /usr/local/include/eigen3/Eigen /usr/local/include
在CmakeLists.txt中使用时:
系统无法默认搜索到时, 只能在CMakeLists.txt用include_libraries(绝对路径了))
CMakeLists.txt 的使用方法:参考网址:https://zhuanlan.zhihu.com/p/149191302