Rust在CentOS上如何调试
导读:在 CentOS 上调试 Rust 的实用指南 一 环境准备 安装调试器:使用系统包管理器安装 GDB(推荐)或 LLDB。在 CentOS 7/8 上可执行:sudo yum install -y gdb lldb。若系统为 CentO...
在 CentOS 上调试 Rust 的实用指南
一 环境准备
- 安装调试器:使用系统包管理器安装 GDB(推荐)或 LLDB。在 CentOS 7/8 上可执行:sudo yum install -y gdb lldb。若系统为 CentOS Stream 9 或已迁移到 dnf,可用:sudo dnf install -y gdb lldb。
- 安装或更新 Rust 工具链:建议通过 rustup 安装/更新,确保 cargo 与 rustc 可用:curl --proto ‘=https’ --tlsv1.2 -sSf https://sh.rustup.rs | sh,然后执行 source $HOME/.cargo/env。
- 验证工具链:rustc --version、cargo --version、gdb --version 应能正常输出版本号。
二 使用 GDB 或 LLDB 命令行调试
- 构建带调试符号的可执行文件:使用开发配置构建(默认即为调试构建)cargo build;发布构建默认不携带完整调试信息,如需在发布包中调试,可在 Cargo.toml 中启用调试信息(见下文“常见问题与技巧”)。
- 启动调试器:
- GDB:gdb target/debug/your_program
- LLDB:lldb target/debug/your_program
- 常用调试命令:
- 设置断点:break main 或 break your_crate::your_module::your_function
- 运行:run(可带命令行参数)
- 单步:step / next
- 打印:print variable 或 print expression
- 栈回溯:backtrace(简写 bt)
- 查看局部变量/参数:info locals / info args
- 退出:quit。
三 使用 VS Code 远程调试
- 安装 VS Code 扩展:Rust Analyzer(提供语言功能)与 CodeLLDB(提供调试适配器)。
- 配置调试启动:在项目根目录创建或编辑 .vscode/launch.json,示例(使用 CodeLLDB):
{ “version”: “0.2.0”, “configurations”: [ { “type”: “lldb”, “request”: “launch”, “name”: “Debug Rust”, “program”: “${ workspaceFolder} /target/debug/your_program”, “args”: [], “cwd”: “${ workspaceFolder} ”, “env”: { } } ] } - 远程开发场景:在 CentOS 上运行 VS Code Remote-SSH,打开项目后按 F5 启动调试;确保远端已安装 CodeLLDB 与 GDB。
四 常见问题与技巧
- 断点不生效或无法打印变量:确保构建产物包含调试信息。开发构建默认包含;若需在发布构建中调试,请在 Cargo.toml 增加:
[profile.release]
debug = true
然后重新构建。 - 快速打印表达式:在代码中插入 dbg! 宏,例如:let y = dbg!(x * 2) + 1; ,运行时会打印出类似 [src/main.rs:2] x * 2 = 10 的信息,便于定位问题。
- 日志辅助:引入 log 与 env_logger 等日志库,在关键路径输出上下文信息,配合调试器定位复杂问题。
- 程序需要参数或环境变量:在 GDB/LLDB 中用 run arg1 arg2 传参;或在 launch.json 的 args 字段配置。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Rust在CentOS上如何调试
本文地址: https://pptw.com/jishu/767578.html
