O Visual Studio Code é um IDE de plataforma cruzada que usa um arquivo tasks.json
para descrever como compilar (e executar outras tarefas ) seu projecto. Você pode executar o VSCode no Windows ou no subsistema WSL Ubuntu. Se você quiser executá-lo no WSL, você deve usar os binários do Ubuntu / Linux.
Notas sobre a WSL
Na linha de comando do Windows, você pode executar comandos do linux usando bash
C:\> bash.exe -c <linux command>
Por exemplo, você pode executar o Linux gcc
usando
C:\> bash -c "gcc -v"
Se você tiver instalado vários sistemas linux no WSL , por exemplo um opensuse e um ubuntu, você deve usar opensuse-42 run
ou ubuntu run
em vez de bash
para determinar qual subsistema linux usa na linha de comando do windows.
C:\> ipconfig | opensuse-42 run grep IP | ubuntu run lolcat
Além disso, observe que o sistema de arquivos do Windows pode ser acessado usando /mnt/<drive letter>/
. Por exemplo, se você tiver uma pasta C:\Projects
, poderá acessá-la do Linux em /mnt/C/Projects
Configurando um VSCode no Windows para usar o GCC no WSL Linux
Verifique o instruções no site . Para usar compiladores GCC ou CLang no Mac ou Linux, você pode usar o bash
com argumentos diferentes, dependendo da tarefa.
Você pode configurar (ou criar) seu próprio task.json
. Você deve definir o bash
como o comando a ser usado. Eu acho que quase a mesma configuração que você usa para Mac / Linux deve funcionar. Eu mudei a opção "cwd".
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "0.1.0",
"wsl": {
"command": "bash",
"args": ["-c"],
"isShellCommand": true,
"showOutput": "always",
"suppressTaskName": true,
"options": {
"cwd": "/mnt/C/${workspaceRoot}"
},
"tasks": [
{
"taskName": "hello",
"args": [
"make hello"
],
"isBuildCommand": true
},
{
"taskName": "clean",
"args": [
"make clean"
]
},
{
"taskName": "compile w/o makefile",
"args": [
"g++ helloworld.C -o hello"
],
"echoCommand": true
}
]
}
}
Existem outras Gists que você pode usar como outros exemplos.
OBSERVAÇÃO: encontrei alguns tutoriais do MS em compilando e depurando programas GCC do Linux usando WSL e Visual Studio , mas não o código do Visual Studio.