"Eigen/Dense: No such file or directory" 在 Visual Studio 代码中

"Eigen/Dense: No such file or directory" in Visual Studio Code

我试图在我的 C++ 程序中使用 Eigen,但出现此错误(路径已简化)。

Starting build...
"C:\Program Files\(...)\g++.exe" -g D:\(...)\main.cpp -o D:\(...)\main.exe
D:\(...)\main.cpp:2:10: fatal error: Eigen/Dense: No such file or directory
 #include <Eigen/Dense>
      ^~~~~~~~~~~~~

我在 .vscode/c_cpp_properties.json 中包含了 Eigen 目录。

包含 Dense 文件和其他文件的 Eigen 文件夹列在我的资源管理器边栏中,在我要使用它的项目下。

这是我的 c_cpp_properties.json:

{
"configurations": [
    {
        "name": "Win32",
        "includePath": [
            "${default}",
            "D:\programming\_lib\cpp\eigen-3.3.9\"
        ],
        "defines": [
            "_DEBUG",
            "UNICODE",
            "_UNICODE"
        ],
        "windowsSdkVersion": "10.0.18362.0",
        "compilerPath": "C:/Program Files/mingw-w64/x86_64-8.1.0-posix-seh-rt_v6-rev0/mingw64/bin/g++.exe",
        "cStandard": "c17",
        "cppStandard": "c++17",
        "intelliSenseMode": "linux-gcc-x64"
    }
],
"version": 4
}

编译命令中似乎没有使用Eigen include。那正确吗?如果是这样,我是通过“编译器参数”或“编译命令”设置手动包含它还是做其他事情?

根据@ThomasSablik 的建议,我使用 -I 参数在我的项目文件夹内的 .vscode/tasks.json 文件中添加特征路径。有效。文件内容:

{
"tasks": [
    {
        "type": "cppbuild",
        "label": "C/C++: g++.exe build active file",
        "command": "C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin\g++.exe",
        "args": [
            "-g",
            "${file}",
            "-o",
            "${fileDirname}\${fileBasenameNoExtension}.exe",
            "-I",
            "D:\programming\_lib\cpp\eigen-3.3.9\",
        ],
        "options": {
            "cwd": "${workspaceFolder}"
        },
        "problemMatcher": [
            "$gcc"
        ],
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "detail": "Task generated by Debugger."
    }
],
"version": "2.0.0"
}