Visual Studio 代码调试器未启动

And*_*icò 9 visual-studio-code

    \n
  • 操作系统和版本:Windows 10 Build 19042.985
  • \n
  • VS代码版本:1.56.2
  • \n
  • C/C++ 扩展版本:v1.4.0-insiders
  • \n
  • 其他扩展:remote-ssh
  • \n
\n

我一直在树莓派和 c/c++ 扩展上使用远程 ssh,没有任何问题,突然间我无法启动调试器。没有任何变化,配置文件与以前相同,但现在当我启动调试器时,我会看到顶部调试栏几秒钟,然后它消失了。控制台上没有任何消息,什么也没有。

\n

为此,我从头开始创建了一个简单的项目,即使在那里,也出现了同样的问题。

\n

重现\nlaunch.json

\n
{\n    "version": "0.2.0",\n    "configurations": [\n        {\n            "name": "(gdb) Launch",\n            "type": "cppdbg",\n            "request": "launch",\n            "program": "${workspaceFolder}/a.out",\n            "args": [],\n            "stopAtEntry": false,\n            "cwd": "${workspaceFolder}",\n            "environment": [],\n            "logging": { "engineLogging": true },\n            "externalConsole": true,\n            "MIMode": "gdb",\n            "miDebuggerPath": "/usr/bin/gdb",\n            "setupCommands": [\n                {\n                    "description": "Enable pretty-printing for gdb",\n                    "text": "-enable-pretty-printing",\n                    "ignoreFailures": false\n                }\n            ]\n        }\n    ]\n}\n
Run Code Online (Sandbox Code Playgroud)\n

主程序

\n
#include <stdio.h>\nint main(){\n    printf("ciao\\n");\n    return 1;\n}\n
Run Code Online (Sandbox Code Playgroud)\n

编译用gcc -g main.c

\n

正如我之前所说,这个工作流程对我来说很有效,从一秒到另一秒,它都停止按预期工作,我不知道为什么以及如何修复它,感谢任何帮助。

\n

我尝试过的

\n
    \n
  • 重新安装vscode
  • \n
  • 重新安装c/c++扩展并手动删除扩展文件夹
  • \n
  • 多次重启
  • \n
\n

更新

\n

我已尝试使用 wsl-remote 扩展,它按预期工作。\xc3\xb9

\n

尝试从主机卸载 gdb 并启动调试会话,消息“gdb”未找到甚至没有出现应有的情况

\n

use*_*923 4

我遇到了类似的情况,找不到相关解决方案:

快速解答: 升级到 VS Code 1.56.2 后,请确保删除旧断点并创建新断点,并且至少有 1 个断点和 launch.json 可用。

冗长的细节:

当我启动“调试器栏”时,我对 python 脚本也有类似的问题,我在顶部调试栏上看到它几秒钟,然后它就消失了。然后控制台上没有任何消息,什么也没有。我尝试重新安装 VS Code、启用/禁用扩展、各种重新启动。

  • 操作系统和版本:Mac OSX 版本 11.4 (20F71)
  • VS代码版本:1.56.2
  • 扩展:Microsoft 的 Python v2021.5.842923320

根本原因:

我确实知道我更新了 VS Code,之后这个神秘的问题开始发生,所以什么时候发布 VS Code 1.56.2 的日志。我发现下面的发布日志

中断时显示调试视图#

debug.openDebug 设置的默认值现在是 openOnDebugBreak,以便在每次断点命中时,VS Code 将打开“调试”视图。调试视图也会在第一次会话启动时显示。

因此,VS code 版本 1.56 发布后,调试器仅在找到至少 1 个断点时才会显示。然而,VS Code 升级后,他们的内部代码检查历史断点数据似乎存在问题。

https://code.visualstudio.com/updates/v1_56#_debug-view-displayed-on-break