如何将 Eigen 库添加到 C++ 项目中

How to add Eigen library to c++ project

可能是个愚蠢/简单的问题,但我找不到答案。我不知道添加库如何与 CodeBlocks c++ 一起使用。我从 http://eigen.tuxfamily.org/index.php?title=Main_Page 下载了 .zip 文件并将文件解压缩到我的目录中。我现在如何在我的项目中使用这个库?

这是一个模板库。只要它在路径中(可访问),您就可以将它放在任何地方。 只需包含正确的 headers 即可。不需要 link 任何东西,一切都在 headers.

在您要使用 Eigen 的源文件中添加一行代码。

#include "Eigen/Dense"

将 Eigen(解压缩的 zip 文件)放在您放置现有工作头文件的目录中。

我个人不知道如何在代码块上安装 eigen,但这些是我执行的步骤并且它起作用了:

  1. 将 ZIP 解压到任意文件夹中
  2. 转到codeblocks设置->编译器->搜索目录->添加->输入您在(1)中选择的文件夹地址-> o.k
  3. 在主函数之前声明#include "Eigen/Dense"

我学习了here

的步骤

这对我来说是一个棘手的问题。我正在使用 Code::Blocks 版本 17.12。

a) 我下载了 Eigen 3.3.5 (http://eigen.tuxfamily.org/index.php?title=Main_Page)。下载的 zip 文件名为 "eigen-eigen-b3f3d4950030"

b) 将文件提取到我的项目文件夹中。

c) 将提取文件的名称从 "eigen-eigen-b3f3d4950030" 更改为 "Eigen3"(您可以选择任何名称)。

d) 在这个文件夹中,你会发现其他文件夹,如 bench、blas、cmake、debug....

现在您必须为您的项目添加库文件(以便编译器知道在哪里寻找所需的库文件)。

e) 在代码块中,单击设置 --> 编译器 --> 搜索目录 --> 编译器

单击“添加”并添加 Eigen3 文件夹(在上一步 'c' 中重命名的下载和解压文件夹)。 添加后,单击链接器选项卡(就在 'Compiler' 选项卡旁边)并将相同的路径添加到 Eigen3 文件夹。

f) 现在点击 'Search Directories' 选项卡旁边的构建选项选项卡。

g) 勾选 "Explicitly add currently compiling file's directory to compiler search dirs" h) 勾选 "Explicitly add project's top-level directory to compile search dirs"

i) 点击确定。

现在您的构建应该可以工作了,并且编译器知道如何搜索 Eigen 库。

有任何问题,就post在这里。

祝福

什尔

在我的射电天文项目中,我通过以下命令安装 Eigen:

sudo apt-get install libeigen3-dev

我的 cmake 自动找到我使用的特征值 header。这是我的 header

的样本
#include <eigen3/Eigen/Core>