Вчера я только что установил vscode с MinGW (у самого MinGW было много проблем с загрузкой из sourceforge, хотя я использовал osdn) и попытался скомпилировать простую программу hello world. Компиляция и запуск программы работают отлично, а отладка - нет.
Версия VSCode: 1.42.1 Версия ОС: Windows 7 ultimate
Программа (c ++. cpp):
#include <iostream>
using namespace std;
int main()
{
cout << "hello world";
return 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": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/a.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe",
"preLaunchTask": "echo",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
задач. json:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "echo",
"type": "shell",
"command": "g++",
"args": [
"-g", "c++.cpp"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
настроек. json:
{
"files.associations": {
"iostream": "cpp"
}
}
c_cpp_properties. json:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"C:\\MinGW\\lib\\gcc\\mingw32\\8.2.0\\include\\c++"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"compilerPath": "C:\\MinGW\\bin\\g++.exe",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
}
Ошибка (в PowerShell после g++ -g c++.cpp
):
PS C:\Users\user\Desktop> & 'c:\Users\user\.vscode\extensions\ms-vscode.cpptools-0.26.3\debugAdapters\bin\WindowsDebugLauncher.exe' '--stdin=Microsoft-MIEngine-In-uygcczuy.knl' '--stdout=Microsoft-MIEngine-Out-mcernddt.mvr' '--stderr=Microsoft-MIEngine-Error-2zriwgkx.y0a' '--pid=Microsoft-MIEngine-Pid-bxnn4lte.ola' '--dbgExe=C:\MinGW\bin\gdb.exe' '--interpreter=mi'
Это кажется неправильным, поскольку после отладки файл .exe должен открываться в другом окне, верно? (Или, по крайней мере, выполнение файл в самом терминале), но ничего не происходит, только это сообщение и его готово.
Я пробовал много разных ответов, но, похоже, ни один из них не работает, как отключение Unicode (я изменил его на упрощенный китайский) в соответствии с этим: https://github.com/Microsoft/vscode-cpptools/issues/1527
Отладочная консоль: https://pastebin.com/mqDP8pKg