VScode 踩坑记录-eigen库

#关于eigen库与Cmake联动的踩坑记录

 安装和配置eigen库

        项目中使用到了eigen库,故开始安装和配置eigen库,下载来自于官网:

       https://eigen.tuxfamily.org/index.php?title=Main_Page

        下载.zip文件,解压到一个全英文路径的文件夹下,之后在c_cpp_properties.json中加入eigen库地址,并在tasks中加入-I 等内容,如下图

之后编写以下代码测试:

可正常运行则表明配置成功;

在CMake下使用eigen库

项目是使用CMake进行编写的,上节所述方法对于CMake环境没有影响,CMake仍然报错

“CMake Error at CMakeLists.txt:3 (message):EIGEN3 not found.”

原因是下载的eigen库是源码,没有经过CMake编译,通过cmake-gui进行编译后即可解决

分别选择源码位置和生成内容位置,然后按configure,选版本即可。

全部完成后,按最下方生成按钮生成,原报错消失,安装成功。(笑死,找到了库可以开始编译了,那么编译就会产生更多的error)

VSCode配置Eigen,可以按照以下步骤进行操作: 1. 首先,确保你已经安装了EigenEigen是一个C++模板,没有任何依赖,可以从官方网站(http://eigen.tuxfamily.org)下载并解压缩。 2. 打开VSCode并创建一个新的C++项目。在项目文件夹中,创建一个名为`.vscode`的文件夹。 3. 在`.vscode`文件夹中创建一个名为`c_cpp_properties.json`的文件,并添加以下内容: ```json { "configurations": [ { "name": "Mac", "includePath": [ "${workspaceFolder}/**", "/path/to/eigen" // 替换为实际的Eigen路径 ], "defines": [], "macFrameworkPath": [ "/System/Library/Frameworks", "/Library/Frameworks" ], "compilerPath": "/usr/bin/clang", "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "clang-x64" }, { // 添加其他系统平台的配置,如Linux和Windows } ], "version": 4 } ``` 确保将`/path/to/eigen`替换为你Eigen的实际路径。 4. 接下来,在VSCode的菜单栏中选择`Terminal -> Configure Default Build Task`,然后选择`g++ build active file`。这将在项目文件夹中创建一个名为`tasks.json`的文件。 5. 在`tasks.json`文件中,将`args`字段更改为以下内容: ```json "args": [ "-std=c++17", "-O2", "-Wall", "-I/path/to/eigen", // 替换为实际的Eigen路径 "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}" ] ``` 确保将`/path/to/eigen`替换为你Eigen的实际路径。 6. 现在,你可以在VSCode中编写C++代码并使用Eigen了。你可以通过`#include <Eigen/Dense>`来引入Eigen的头文件,并使用其提供的功能。 注意:上述步骤假设你正在使用Mac系统。如果你使用的是Linux或Windows系统,请相应地调整配置文件中的路径和编译器选项。 希望这些步骤能帮助到你!如果有任何其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值