在ubutun中编译c++时报错:fatal error: Eigen/Core: 没有那个文件或目录。

问题描述

在ubutun中编译c++时报错:

fatal error: Eigen/Core: 没有那个文件或目录。


原因分析:

Eigen3库是一个用于线性代数运算的C++模板库,‌它提供了矩阵、‌向量、‌数组等数据结构以及各种线性代数运算的函数和方法。‌Eigen3支持线性代数、‌矩阵和矢量运算、‌数值分析及其相关的算法,‌是一个高层次的C++库,‌有效支持复杂的数学运算。‌它是一个开源库,‌从3.1.1版本开始遵从MPL2许可,‌以源代码的形式提供给用户,‌只需将其代码包含在自己的程序中即可使用,‌无需链接动态链接库(DLL),‌也没有任何除iostream以外的依赖项。‌
Eigen3库因其高效性和灵活性,‌被广泛应用于各种需要进行矩阵和向量操作的领域,‌如机器学习、‌图像处理、‌物理模拟等。‌在机器学习中,‌Eigen3库提供的高效函数可以极大地提高矩阵和向量的乘法、‌转置、‌求逆等操作的性能;‌在图像处理中,‌它可以方便地进行图像的滤波、‌变换、‌特征提取等操作;‌在物理模拟中,‌它可以大大提高物理模拟的计算速度和精度。‌

可能的原因:
(1)没有安装eigen3库。
(2)CMakeList没有包含eigen3的头文件。


解决方案:

1.首先打开终端,通过以下命令检查ubutun是否安装eigen3库。

pkg-config --modversion eigen3

如果安装了,会有版本号。
在这里插入图片描述
如果没安装,通过以下命令安装。

sudo apt-get install libeigen3-dev

2.安装好eigen3库或者已经安装了eigen3库,仍然编译报错,检查CMakeList是否包含了eigen3的头文件(include_directories(“/usr/include/eigen3”))。
3.添加了头文件仍然报错,终端执行以下命令将eigen3库映射到/usr/include 路径。

sudo ln -s /usr/include/eigen3/Eigen /usr/include/Eigen

注意eigen3 库默认安装在 /usr/include/eigen3/Eigen 路径。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误通常是因为编译器无法找到Eigen/Dense头文件导致的。解决方法有两种,具体取决于你的Eigen安装位置。 如果你的Eigen安装在/usr/local/include目录下,你可以通过建立软连接来解决这个问题。打开终端并执行以下命令: ``` cd /usr/local/include sudo ln -sf eigen3/Eigen Eigen sudo ln -sf eigen3/unsupported unsupported ``` 这将在/usr/local/include目录下创建Eigen和unsupported的软连接,使编译器能够找到这些头文件。\[2\] 如果你的Eigen安装在/usr/include目录下,你可以执行以下命令来建立软连接: ``` cd /usr/include sudo ln -sf eigen3/Eigen Eigen sudo ln -sf eigen3/unsupported unsupported ``` 这将在/usr/include目录下创建Eigen和unsupported的软连接,以解决编译器找不到头文件的问题。\[3\] 通过执行上述命令,你应该能够解决"fatal error: Eigen/Dense: 没有那个文件目录"的错误。 #### 引用[.reference_title] - *1* [《无法打开包括文件:“Eigen\Dense”:No such file or directory》亲测有效的解决方法](https://blog.csdn.net/wjrll/article/details/126706573)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [fatal err Eigen/Dense No such file or directory(unsupported/Eigen/FFT、Eigen/Core也是一样的道理)](https://blog.csdn.net/u013834525/article/details/88832374)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [致命错误:Eigen/Dense:没有那个文件目录](https://blog.csdn.net/qq_35854617/article/details/120145199)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值