安装 libeigen3-dev 包后如何在 C++ 库中包含 Eigen
How to include Eigen in C++ library after installing libeigen3-dev package
我正在尝试使用 cmake 从源代码(主分支)构建 OpenCV。
我通过 apt-get 安装了 Eigen 包。
sudo apt-get install libeigen3-dev
安装成功,cmake打印eigen 3.3.4已安装
Eigen: YES(ver 3.3.4)
但是当我'make'时,它显示错误
/opencv/modules/core/include/opencv2/core/private.hpp:66.12: fatal error: Eigen/Core: No such file or directory
# include <Eigen/Core>
^~~~~~~~~~~~
compilation teminated.
我在超级用户上找到了 same question。
因此,正如答案所做的那样,我已将 cmake/OpenCVFindLibsPerf.cmake 从第 44 行更改为第 59 行。
在我注释掉第46-48行和第59行之后,
并将第 44 行中的 find_package(Eigen3 QUIET)
更改为 find_package(Eigen3 3.0.0)
,它起作用了。
而且这个问题只发生在OpenCV 4.0版本上
当我安装 OpenCV 3.4.6 版本(github 上标记 3.4.6)时,没有出现此问题。
我正在尝试使用 cmake 从源代码(主分支)构建 OpenCV。
我通过 apt-get 安装了 Eigen 包。
sudo apt-get install libeigen3-dev
安装成功,cmake打印eigen 3.3.4已安装
Eigen: YES(ver 3.3.4)
但是当我'make'时,它显示错误
/opencv/modules/core/include/opencv2/core/private.hpp:66.12: fatal error: Eigen/Core: No such file or directory
# include <Eigen/Core>
^~~~~~~~~~~~
compilation teminated.
我在超级用户上找到了 same question。
因此,正如答案所做的那样,我已将 cmake/OpenCVFindLibsPerf.cmake 从第 44 行更改为第 59 行。
在我注释掉第46-48行和第59行之后,
并将第 44 行中的 find_package(Eigen3 QUIET)
更改为 find_package(Eigen3 3.0.0)
,它起作用了。
而且这个问题只发生在OpenCV 4.0版本上
当我安装 OpenCV 3.4.6 版本(github 上标记 3.4.6)时,没有出现此问题。