Я пытаюсь приблизиться к VS Code, у меня есть Windows и Ubuntu на ВМ, но я бы предпочел отлаживать на windows.
Мой учитель сказал нам использовать MinGW и я использую его для кодирования / компиляции без проблем, я уже установил переменные среды Win. Я новичок в мире отладки и, может быть, трудно начать с VS Code, я не знаю. Я пытаюсь следовать многим урокам и не знаю, правильно ли я это делаю. Я должен сказать, что я использую Makefile вместо компиляции в VS Code, я не знаю, есть ли разница. Вот мой стандартный Makefile:
all: Prog.exe
Prog.exe: main.o
g++ main.o -o Prog.exe
main.o: main.cpp
g++ -c -g -Iinclude main.cpp
.PHONY: clean
clean:
rm -rf *.o *.exe
1) Я только знаю, что параметр "-g" включает в себя отладочную информацию, этого достаточно для процесса компиляции для отладки?
2 ) Я следую учебным пособиям по VS Code, чтобы настроить запуск. json file, и я думаю, что все делаю правильно:
launch. 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": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "I:/Documenti/.../Prove debug/Prog.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:/MinGW/bin/gdb.exe",
"setupCommands": [
{
"description": "Abilita la riformattazione per gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
Я обнаружил, что на сайте VS Code:
- задачи. json (инструкции по сборке)
- запуск. json (настройки отладчика)
- c_cpp_properties. json (путь к компилятору и настройки IntelliSense)
3) Так что мне нужен только запуск. json? Если у меня нет файла. json, он просит меня выбрать между различными конфигурациями:
Конфигурация среды
4) только кажется, что работает второй, но он пропускает точки останова и он бесполезен ... Могу ли я использовать "GDB" на windows? Если я пытаюсь использовать GDB, после установки всех запусков. json я получаю эту ошибку:
Ошибка GDB
5 ) Я бы предпочел отлаживать на windows с MinGW, это возможно?
РЕДАКТИРОВАТЬ: Я решил, проблемы были 2 больших (a, b) и 1 маленький (c);
a. каталог "program"
;
b. каталог gdb / compiler;
c. файл задачи. json, который не нужен, если вы компилируете с помощью make-файла (или вручную с помощью терминала).
a: я заменил "${fileDirname}\\${fileBasenameNoExtension}.exe"
на полный каталог моей программы;
b: у меня есть 2 разных каталога MinGW (так что 2 каталога gdb):
- один, который я установил вручную (в C:);
- другой, который я установил внутри Qt (внутри F:);
, когда VS Code автоматически генерирует "launch. json", он устанавливает мне "miDebuggerPath"
(путь gdb) для gdb, установленного с Qt (возможно, для порядка в путях среды Win10) и I ' мы всегда меняли его на другой каталог ... Вероятно, если я хочу изменить каталог, я должен установить его в большем количестве файлов, и произошла ошибка 2 разных каталогов GDB. Я оставил каталог automati c (внутри Qt, в F :);
c: у меня была ошибка задачи из-за отладки, которая уже работала, поэтому я понял, что было два разных действия. Я решил удалить всю строку "preLaunchTask": "g++.exe build active file"
и удалить файл "task.json"
.