Как сделать целевой make-файл в коде Visual Studio? - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь выяснить, как скомпилировать мой код на C ++ в среде vs-кода.

Я могу скомпилировать с помощью g ++, но я не смог выяснить это в vs-кодепока что.

Я использовал ответ BeeOnRope на этот вопрос, чтобы настроить команду для сборки и соответствующую горячую клавишу.

Как настроить код Visual Studio для компиляции кода C ++?

Появляется ошибка:

make: *** Нет правила для создания цели `Makefile '.Стоп.Терминальный процесс завершился с кодом выхода: 2


После работы над моим tasks.json это выглядит так, но я все еще получаю ту же ошибку, показанную выше.

{"version": "2.0.0", "command": "make", "tasks": [{"label": "Makefile",

        "group": "build",

        // Show the output window only if unrecognized errors occur.
        "presentation": {"reveal": "always"},

        // Pass 'all' as the build target
        "args": ["all"],

        // Use the standard less compilation problem matcher.
        "problemMatcher": {
            "owner": "cpp",
            "fileLocation": ["relative", "${workspaceRoot}"],
            "pattern": {
                "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                "file": 1,
                "line": 2,
                "column": 3,
                "severity": 4,
                "message": 5
            }
        }
    }
]

}

Извините за странное форматирование.Не могу понять, как stackoverflow любит форматировать вещи.

1 Ответ

0 голосов
/ 14 февраля 2019

В вашем tasks.json добавьте / отредактируйте поля «command» и «args», чтобы получить командную строку сборки, которую вы запускаете вручную.Это может быть g ++, make или что-то еще.См. Здесь:

https://code.visualstudio.com/docs/editor/tasks


Обновление : Глядя на опубликованный вами файл tasks.json, ваша команда должна входить в задачу.Примерно так:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "My Build",
            "group": "build",
            "type": "shell",
            "command": "g++",
            "args": [
               "-o", "LexParse", "Lexxy.cpp", "Parzival.cpp"
            ]
        }
    ]
}

PS. Один из способов форматирования вашего кода здесь - сделать отступ для всего этого:отступ, хотя я делаю это здесь, так что я могу иметь обратные кавычки в пределах обратных кавычек):

    ```
    int main 
    {
        []( auto world ) { return "Hello"s + world; } ( ", World!" );
    }
    ```
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...