我阅读了Eigen 安装的文档。根据文档,您的项目中只需要引用头文件。如下图所示,我将 Eigen 的路径包含在包含目录中,但程序无法识别 Eigen。
示例代码:
#include <iostream>
#include <Eigen/Dense>
using Eigen::MatrixXd;
int main()
{
MatrixXd m(2, 2);
m(0, 0) = 3;
m(1, 0) = 2.5;
m(0, 1) = -1;
m(1, 1) = m(1, 0) + m(0, 1);
std::cout << m << std::endl;
}
Run Code Online (Sandbox Code Playgroud)
如何正确地将 Eigen 包含到我的 C++ 项目中?
您添加path/to/eigen-3.4.0/Eigen到包含路径,但随后包含 header Eigen/Dense,因此这会查找path/to/eigen-3.4.0/Eigen/Eigen/Dense. 这实在是Eigen太多了。
将包含路径设置path/to/eigen-3.4.0为。
(不要试图修改 include 来#include <Dense>代替。这可能会导致 Eigen 无法找到自己的标头,并且还很容易导致命名冲突。)