Использование gcc из подсистемы Windows Sublinux в Vscode в Windows [закрыто]

Начиная с Windows Fall Creators Update, мы можем установить подсистему Linux, такую ​​как Ubuntu, из хранилища Windows на машине с Windows.

Можно ли использовать компилятор gcc из подсистемы Linux в Windows для создания приложений c с vscode в Windows для Linux?

5
задан 19 October 2017 в 05:09

1 ответ

Кодом Visual Studio является межплатформенный IDE, который использует a tasks.json файл, чтобы описать, как скомпилировать (и выполнить другие задачи), Ваш проект. Можно выполнить VSCode в Windows или в подсистеме Ubuntu WSL. Если Вы хотите выполнить его в WSL, необходимо использовать двоичные файлы Ubuntu/Linux.


Примечания по WSL

В командной строке Windows можно выполнить использование команд Linux bash

C:\> bash.exe -c <linux command>

Например, можно запустить Linux gcc использование

C:\> bash -c "gcc -v"

При установке нескольких систем Linux на WSL, например, opensuse и человечности необходимо использовать opensuse-42 run или ubuntu run вместо bash определить который использование подсистемы Linux в командной строке окон.

C:\> ipconfig | opensuse-42 run grep IP | ubuntu run lolcat

Кроме того, обратите внимание, что с помощью файловая система Windows можно получить доступ /mnt/<drive letter>/. Например, если у Вас есть a C:\Projects папка, можно получить доступ к нему из Linux в /mnt/C/Projects


Конфигурирование VSCode в Windows для использования GCC в Linux WSL

Проверьте инструкции в веб-сайт. Для использования GCC или компиляторов Лязга в Mac или Linux можно использовать bash с различными аргументами в зависимости от задачи.

Можно настроить (или создать) собственное task.json. Необходимо определить bash как команда для использования. Я думаю почти та же конфигурация, которую Вы используете для Mac/Linux, должен работать. Я изменил "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
            }
        ]
    }
}

Существует некоторая другая Суть, которую можно использовать в качестве других примеров.

Примечание: Я нашел некоторые учебные руководства MS при компиляции и отладке Linux программы GCC с помощью WSL и Visual Studio, но не Кода Visual Studio.

4
ответ дан 23 November 2019 в 09:30

Другие вопросы по тегам:

Похожие вопросы: