C ++ Visual Studio代码未与工作区中的单个文件夹一起编译

时间:2019-08-03 22:45:57

标签: c++ visual-studio-code compiler-errors workspace

我是Visual Studio Code的新手。我正坐在一个带有多个文件夹的工作区中,以在根目录下使用相同的.vs代码创建单个项目。除非我的.cpp和.h文件位于根文件夹下,否则会出现编译错误:“ g ++。exe:错误:main.cpp:没有这样的文件或目录”和“ g ++。exe:致命错误:没有输入文件”。换句话说,如果我将文件添加到工作区根目录下的子文件夹中-甚至将.vscode文件夹复制到每个子文件夹中,它将无法编译,并且会出现此错误。

我已经弄乱了启动和设置.json文件,但无济于事。

这是launch.json配置:

   {
        "name": "(gdb) Launch",
        "type": "cppdbg",
        "request": "launch",
        "program": "${workspaceFolder}/main.exe",
        "args": [],
        "stopAtEntry": false,
        "cwd": "${workspaceFolder}",
        "environment": [],
        "externalConsole": true,
        "MIMode": "gdb",
        "miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe",
        "preLaunchTask": "echo",
        "setupCommands": [
            {
                "description": "Enable pretty-printing for gdb",
                "text": "-enable-pretty-printing",
                "ignoreFailures": true
            }
        ]
    }

我希望能够对所有也包含c ++代码的所有子文件夹项目在根文件夹下使用相同的.vscode设置。这有可能吗?我想念什么?

1 个答案:

答案 0 :(得分:0)

首先,您需要检查tasks.json而不是launch.json,因为tasks.json具有用于编译源代码的配置。

tasks.json中,您可以提及源代码的相对路径。

并且每次需要编译源文件时,都需要编辑tasks.jsonlaunch.json

您可以将.vscode文件夹放在根工作区中,并将源代码放在子文件夹中。