Разработка в Visual Studio Code
На оф. сайте можно посмотреть подраздел для вашей конфигурации (компилятор+ОС).
В данном разделе пойдёт описания использования CMake Tools в VSCode для конфигурации, сборки и отладки кода.
Подробнее про CMake в памятке
Установка
CMake Tools. Для этого расширения может потребоваться установить переменную CMAKE_GENERATOR
, подробнее здесь.
После установки расширения слева появится раздел CMake Tools

Project Status содержит информацию по используемым конфигурациям и возможность запуска шагов сборки и отладки для проекта.
Configure
Подраздел Configure позволяет выбрать CMake генератор и саму конфигурацию


После настройки можно сконфигурировать CMake проект:

В Output консоли будет вызвана команда:
Executing command: "cmake.EXE" -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE --no-warn-unused-cli -S<project_path> -B<project_path>/build -G "Visual Studio 17 2022" -T host=x64 -A x64
Последние параметры меняются в зависимости от выбранных конфигураций.
Build
Позволяет собрать сконфигурированный проект.

Запускает команды:
# clean
"cmake.EXE" --build <project_path>/build --config <config> --target clean
# rebuild
"cmake.EXE" --build <project_path>/build --config <config> --target ALL_BUILD
Test
Позволяет запустит тесты, если включена enable_testing()
и настроен хотя бы один тест:
ctest.exe -C <config> -T test --output-on-failure -R <name>
Пример настройки тестов test in VSCode
Launch
Запуск без отладки.
Возможны 2 сценария использования:
Запуск через CMakeTools
Для корректного запуска (из нужной директории с необходимыми параметрами) необходимо добавить настройку в settings.json
:
// после
"cmake.pinnedCommands": [
"workbench.action.tasks.configureTaskRunner",
"workbench.action.tasks.runTask"
],
"cmake.buildTask": true,
// добавить
"cmake.debugConfig": {
"request": "launch",
"program": "${command:cmake.launchTargetPath}",
"args": [
"${workspaceRoot}/niconiconi.png"
],
"cwd": "${workspaceRoot}"
}
Открыть этот файл можно здесь:

Запуск через VSCode Run&Debug
Для корректного запуска необходимо настроить launch.json
, который располагается в корне текущего VSCode workspace:

{
"version": "0.2.0",
"configurations": [
{
"name": "DebugArgv",
"type": "cppvsdbg",
"request": "launch",
"program": "${command:cmake.launchTargetPath}",
"args": [
"niconiconi.png"
],
"cwd": "${workspaceRoot}",
}
]
}
После чего можно запускать таргет через меню VSCode:

Debug
Крайне полезная ссылка: https://github.com/microsoft/vscode-cmake-tools/blob/main/docs/debug-launch.md
Отличие от запуска без отладки в необходимости задания дебаггера.
Для отладки следует перейти в раздел Run&Debug VSCode и выбрать в левом верхнем меню нужную вам конфигурацию запуска. В данном примере она одна. После чего в коде достаточно расставить breakpoint-ы и запустить программу в режиме отладки:

В режиме отладки можно в:
верхнем меню переходить по строкам кода и управлять исполнением;
меню Variables просматривать значения текущих локальных переменных;
меню Watch выносить интересующие переменные и следить за ними;
меню Call Stack следить за стеком вызовов функций;
меню Breakpoints управлять точками останова.

В Debug Console есть возможность посмотреть и изменить значения переменных в процессе отладки.

Last updated