fatal err Eigen/Dense No such file or directory(unsupported/Eigen/FFT、Eigen/Core也是一样的道理)

0. 写在最前面

自己在编译一个程序的时候遇到了这个问题。搜索网上的一些答案,很多都说得不详,或者解决办法不好。最后找到了stackoverflow的一个问题,终于解决了,在此分享一下,避免大家走弯路。有帮助到你的话点个赞或者关注呗~~~

1. 解决办法

究其原因,就是编译器找不到这个头文件了,首先要确保你已经安装了Eigen3.

Eigen其实只是一个纯头文件的库,你直接安装放到include目录就好。

官网下载一个稳定的版本,然后解压放到/usr/local/include或者/usr/include目录即可。

或者通过apt安装:sudo apt-get install libeigen3-dev

出现这个问题主要是因为eigen3的文件结构导致的:
在这里插入图片描述
如图,编译器会直接去/usr/local/include或者/usr/include目录找头文件,但是找到的是eigen3,并没有Eigen和unsupported。所以我们可以建立一个软连接到这两个文件夹。

#要先确定你的Eigen安装在/usr/local/include还是/usr/include
cd /usr/local/include
sudo ln -sf eigen3/Eigen Eigen
sudo ln -sf eigen3/unsupported unsupported

修改完后即可。

参考

https://stackoverflow.com/questions/23284473/fatal-error-eigen-dense-no-such-file-or-directory


喜欢我的文章的话Star一下呗Star

版权声明:本文为白夜行的狼原创文章,未经允许不得以任何形式转载

posted @ 2019-03-26 22:35  浩劫Calamity  阅读(2528)  评论(0编辑  收藏  举报