tikv 构建成功了 采用target/debug/tikv-server 也可以启动 请问如何使用vscode调试呢


我用 vscode F5 启动 cmd/bin/tikv-server.rs 总是启动不起来

总是出现这个问题 能告诉下 怎么解决吗?

修改.vscode/launch.json,指定可执行文件为 tikv-server,选用 lldb 调试、配置正确工作目录与启动参数,再按 F5 调试。

VS Code 默认自动匹配到了fuzz二进制,没有指向tikv-server可执行文件,调试程序跑错包直接退出。

在vscode里装好rust-analyzer插件,配置launch.json把program指向target/debug/tikv-server,按F5就能直接打断点调试了。

1 个赞

博客 - 启航TiDB:调试环境搭建(vscode+wsl+pd) | TiDB 社区 这有个博客可以参考一下

安装 VS Code 的 Rust 与 C/C++ 调试插件,配置.vscode/launch.json指向target/debug/tikv-server二进制,配置启动参数后即可断点调试 TiKV 源码。

  1. 编译环境:已安装 rust-analyzerlldb(macOS)/ gdb(Linux,生产服务器 Linux 必用 gdb)
  2. 已编译出可调试程序:target/debug/tikv-server(debug 编译自带调试符号,无需额外配置)
  3. VSCode 插件安装
  • Rust:rust-analyzer(官方语言服务)
  • CodeLLDB:跨平台调试器(Linux/macOS 首选,替代系统原生 gdb,体验更好)

Linux 环境推荐组合:rust-analyzer + CodeLLDB

核心在于为 fuzz 程序提供正确的启动参数,并确保调试器环境的稳定性

在vscode中安装rust语言扩展,配置launch.json即可启动调试。

命令行能跑 target/debug/tikv-server 说明二进制没问题,VSCode 失败多半是 launch 配置不对。应用 CodeLLDB/cppdbg 直接调试已编译二进制,program 指到 target/debug/tikv-server,cwd 设仓库根目录,并带上你命令行那套参数(config、data-dir 等);不要只对 tikv-server.rs 做无参数 F5。确认 rust-analyzer/lldb 扩展正常,且调试环境变量与手动启动一致。