Visual studio code 通过VsCode使用gdbserver从win10到linux_x86_64的远程调试

Visual studio code 通过VsCode使用gdbserver从win10到linux_x86_64的远程调试,visual-studio-code,gdb,containers,gdbserver,Visual Studio Code,Gdb,Containers,Gdbserver,我有一个win10主机和一个ubuntu目标(一个docker容器)(相同的x86_64)。我在hello world(c代码)elf上的目标上运行gdbserver,并且在主机上有gdb.exe(与mingw64交叉编译)客户端。我能够使用gdb命令行从windows正确调试应用程序。 目标上:gdbserver localhost:9000/home/tmp/app2 主机上:目标远程本地主机:9000 我想用Vscode而不是命令行进行调试。 我编写了一个launch.json,如下所示:

我有一个win10主机和一个ubuntu目标(一个docker容器)(相同的x86_64)。我在hello world(c代码)elf上的目标上运行gdbserver,并且在主机上有gdb.exe(与mingw64交叉编译)客户端。我能够使用gdb命令行从windows正确调试应用程序。 目标上:gdbserver localhost:9000/home/tmp/app2 主机上:目标远程本地主机:9000

我想用Vscode而不是命令行进行调试。 我编写了一个launch.json,如下所示:

        {
            "type": "gdb",
            "request": "attach",
            "name": "Attach to gdbserver",
            "executable": "app2",
            "target": "localhost:9000",
            "remote": true,
            "cwd": "${workspaceRoot}", 
            "gdbpath": "C:\\work\\gdb.exe"
        }

似乎什么也没有发生,我看不到任何输出日志。

这是正确的JSON文件

{ “版本”:“0.2.0”, “配置”: [ {

        "type": "cppdbg", 
        "request": "launch",
        "name": "GDB",
        "program": "C:\\work\\app2",
        "miDebuggerPath":"gdb.exe" ,
        "miDebuggerServerAddress" : "localhost:9000",
        "cwd": ".", 
        "linux": {
            "MIMode": "gdb"
        },
        "osx": {
            "MIMode": "lldb"
        },
        "windows": {
            "MIMode": "gdb"
        }
    }
]
}