Visual Studio代码-C ++调试器无法启动

时间:2018-11-01 20:12:22

标签: c++ linux debugging visual-studio-code mono

一段时间以来,我一直在使用Visual Studio Code在Linux上调试C ++。

在一个示例项目中,我有以下launch.json

{
    "name": "(gdb) Launch",
    "type": "cppdbg",
    "request": "launch",
    "program": "${workspaceFolder}/main",
    "args": [],
    "stopAtEntry": false,
    "cwd": "${workspaceFolder}",
    "environment": [],
    "externalConsole": true,
    "MIMode": "gdb",
    "setupCommands": [
        {
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
        }
    ]
}

我已经成功编译并运行了main.c,因此调试应该可以正常进行。

启动调试器时,箭头下方会出现一个蓝色的加载栏,但什么也没发生。在我的笔记本电脑上,使用完全相同的配置,几秒钟后,加载栏将消失,调试器将启动。

看着ps aux,我可以看到两个新过程:

  1. mono.linux-x86_640和命令/home/guyyst/.vscode/extensions/ms-vscode.cpptools-0.20.1/debugAdapters/mono.linux-x86_64 --config /home/guyyst/.vscode/extensions/ms-vscode.cpptools-0.20.1/debugAdapters/framework/config.linux /home/guyyst/.vscode/extensions/ms-vscode.cpptools-0.20.1/debugAdapters/bin/OpenDebugAD7.exe

  2. bash和命令bash /home/guyyst/.vscode/extensions/ms-vscode.cpptools-0.20.1/debugAdapters/OpenDebugAD7

在笔记本电脑上进行调试会产生相同的过程,但是在调试实际开始时它们会消失。即使关闭VSCode,PC上的两个进程仍然存在。当我第一次注意到这一点时,我从以前的尝试中获得了15份以上的副本。

昨天所有这些工作都很好,从那时起,我不记得对配置进行任何更改。

我尝试通过AUR版本visual-studio-code-bin或开源软件包code重新安装VSCode几次。

调试一些Python代码效果很好。

1 个答案:

答案 0 :(得分:10)

事实证明,将externalConsole中的launch.json设置为false一样容易。本应该考虑过尝试过的。

我受制于VSCode控制台,这没什么大不了的。

我仍然无法解释为什么它不能与外部控制台一起使用,因为那是我仍然在笔记本电脑上使用并在PC上也使用的方式。