{
"label": "cmake",
"type": "shell",
"options": {
"cwd": "${workspaceRoot}/build"
},
"command": "cmake "MinGW Makefiles" ${workspaceRoot}",
},
This works, It seems that the "Executing task in folder cpppractice:" is not accurate and it is executing it in the correct place, as for why it did not work previously I think it's parsing the args incorrectly? I can't confirm, but here is the output:
Executing task in folder cpppractice: cmake "MinGW Makefiles"
C:workspacecppcpppractice <
-- Configuring done
-- Generating done
-- Build files have been written to: C:/workspace/cpp/cpppractice/build
Where previously it was compalining about not being able Use the generator "MinGW" which means that it separating the argument "MinGW Makefiles".
After some tinkering I found out that this is also an answer:
{
"label": "cmake",
"type": "shell",
"options": {
"cwd": "${workspaceRoot}/build"
},
"command": "cmake",
"args": [
"-G",
"'MinGW Makefiles'",
"./.."
],
...
},
I actually find the second approach a little bit cleaner but both work the same, So in order to pass an argument as a string you have to use single quotes like so:
...
"command":"echo",
"args": [
"'Za Warudo!'",
],
...
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…