VS Code 中的rbreak

问题描述 投票:0回答:1

有没有办法在 VS Code 中使用 gdb 的

rbreak
命令?

我想中断文件中的所有功能。

visual-studio-code gdb
1个回答
0
投票

是的,您可以通过 Visual Studio Code (VS Code) 在 GDB 中使用

rbreak
命令,但它需要一些设置,因为 VS Code 的内置调试器界面本身并不直接公开所有 GDB 命令。具体方法如下:

  1. 为 GDB 配置 VS Code:确保您的 VS Code 设置为使用 GDB 进行调试。这通常涉及安装 Microsoft 的 C/C++ 扩展并为 C 或 C++ 项目配置

    launch.json
    文件。

  2. 自定义 GDB 命令:VS Code 允许您通过

    launch.json
    配置向 GDB 发送自定义命令。您可以使用此功能来执行
    rbreak
    命令。但是,这通常是在启动调试器时完成的,而不是在调试会话期间以交互方式完成。

    以下是如何在您的

    launch.json
    中进行设置的示例:

    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "C/C++: gdb",
                "type": "cppdbg",
                "request": "launch",
                "program": "${workspaceFolder}/a.out",
                "args": [],
                "stopAtEntry": false,
                "cwd": "${workspaceFolder}",
                "environment": [],
                "externalConsole": false,
                "MIMode": "gdb",
                "setupCommands": [
                    {
                        "description": "Enable pretty-printing for gdb",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    },
                    {
                        "description": "Break on all functions in a file",
                        "text": "rbreak filename.cpp:",
                        "ignoreFailures": true
                    }
                ],
                "miDebuggerPath": "/usr/bin/gdb"
            }
        ]
    }
    

    在此配置中,将

    filename.cpp
    替换为文件的实际名称。

  3. 交互式 GDB 控制台:如果您需要更大的灵活性并希望以交互方式运行 GDB 命令(例如在调试会话期间使用

    rbreak
    ),您可以使用 VS Code 中的集成 GDB 控制台。要访问控制台:

    • 开始调试。
    • 在 VS Code 中打开调试控制台。
    • 然后您可以直接在此处输入 GDB 命令,例如
      rbreak filename.cpp:

使用

rbreak
时,它会在指定文件中的所有函数上设置断点,根据文件的内容,断点可能过多。在特定函数或感兴趣的行上设置断点通常更实用。

© www.soinside.com 2019 - 2024. All rights reserved.