Как настроить отладку в визуальном коде для большого проекта C ++ - PullRequest
0 голосов
/ 06 февраля 2020

Я новичок в c ++ и vs-code, но мне было поручено использовать / разработать существующий проект c ++ (я использовал python и превосходный до этого).

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

В настоящее время я так и делаю:

  • Внесите некоторые изменения в код для Например, в $ basedir / src / folder1 / file. cpp
  • Go to $ basedir в терминале и выполните
  • a) make
  • b) дождитесь, пока он наберет go через несколько папок, чтобы найти файл, который был изменен.
  • c) cd $ basedir / Programs / dawn; сделать чистым; make
  • И, наконец, для запуска проекта введите: $basedir/programs/project/projectname inputfile.json

Что я хочу сделать, это просто нажать F5 (для отладки, или Ctrl + F5 для запуска), но я не знаю, как все настроить против кода. Кто-нибудь может мне помочь?

Это мои файлы конфигурации: В c_cpp_properties. json Я ссылался на два других проекта, но мне также нужно добавить текущий каталог include-каталог, чтобы vs-code не пожаловаться на include-файл, et c (я думал, что он автоматически найдет файлы в проекте с ${workspaceFolder}/**)

{
"configurations": [
    {
        "name": "Linux",
        "includePath": [
            "${workspaceFolder}/**",
            "~/otherproject1/include/",
            "~/otherproject2/include/",
            "~/Documents/projectname/include"
        ],
        "defines": [],
        "compilerPath": "/usr/bin/gcc",
        "cStandard": "c11",
        "cppStandard": "c++17",
        "intelliSenseMode": "clang-x64"
    }
],
"version": 4
}

{

задач. json

"tasks": [
    {
        "type": "shell",
        "label": "g++ build active file",
        "command": "/usr/bin/g++",
        "args": [
            "cd ${workspaceFolder};",
            "make;",
            "make clean -C programs/projectname;",
            "make -C programs/projectname;",
        ],
        "options": {
            "cwd": "/usr/bin"
        }
    }
],
"version": "2.0.0"
}

запуск . json

{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
    {
        "name": "g++ build and debug active file",
        "type": "cppdbg",
        "request": "launch",
        "program": "${workspaceFolder}/programs/projectname inputfile.json",
        "args": [],
        "stopAtEntry": false,
        "cwd": "${workspaceFolder}",
        "environment": [],
        "externalConsole": false,
        "MIMode": "gdb",
        "setupCommands": [
            {
                "description": "Enable pretty-printing for gdb",
                "text": "-enable-pretty-printing",
                "ignoreFailures": true
            }
        ],
        "preLaunchTask": "g++ build active file",
        "miDebuggerPath": "/usr/bin/gdb"
    }
]
}

1 Ответ

0 голосов
/ 06 февраля 2020

Microsoft предоставляет отличные учебные пособия для настройки среды отладки.

Пожалуйста, проверьте следующие учебные пособия:

VSCode CPP Отладка

Config mingW и G CC Отладка

В вашей конфигурации очевидно, что вы пропустили .exe здесь

"program": "${fileDirname}/${fileBasenameNoExtension}", //< -- wrong
"program": "${fileDirname}/${fileBasenameNoExtension}.exe", // < -- correct

, найдите свой отладчик и добавьте путь здесь:

"miDebuggerPath": "C:\\path\\to\\gdb.exe",

Чтобы начать отладку, просто нажмите F5. Для Сборки нажмите CTRL + SHIFT + B и выберите задачу сборки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...