Rust 的交互式调试器
Nilesh Katuwal
2022年5月18日
本文将向你展示如何为 Rust 制作交互式调试器。首先,让我们看看我们如何一步一步地做到这一点。
在 Rust 中使用 VS Code
和 CodeLLDB
扩展执行程序
VS Code
和 CodeLLDB
扩展执行用 Rust
编写的程序。为 Rust 使用交互式调试器要遵循的步骤如下。
-
安装 VS 代码。
-
在 VS Code 中搜索
Rust
扩展或新的 Rust 分析器。 -
在 VS Code 中安装可用的扩展。
扩展文件取决于你所使用的操作系统。
C/C++ (Windows)
CodeLLDB (OS X / Linux)
-
检查先决条件并为平台设置
CodeLLDB
(v1.6
可能不需要进一步设置)。 -
在
VS Code
中搜索扩展CodeLLDB
并安装它。 -
主菜单项
run
由LLDB Debugger
添加,我们可以从这里开始调试。我们需要选择环境(调试器):如果调试器是第一次启动,请选择LLDB
。 -
选择
LLDB
时将打开launch.json
文件。如果该文件没有打开,它应该在你 PC 的.vscode
文件夹下。
launch.json
应该如下所示。
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug",
"program": "${workspaceRoot}/target/debug/hello_there",
"args": [],
"cwd": "${workspaceRoot}/target/debug/",
"sourceLanguages": ["rust"]
}
]
}
但是假设我们想要通用的东西并且只编译一个与货物文件夹名称匹配的二进制文件。在这种情况下,我们可以使用 ${workspaceRootFolderName}
变量替换 program
键,如下所示。
{
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug",
"program": "${workspaceRoot}/target/debug/${workspaceRootFolderName}",
"args": [],
"cwd": "${workspaceRoot}/target/debug/",
"sourceLanguages": ["rust"]
}
]
}
基本 Rust 程序
现在我们的交互式调试器已经准备就绪,我们可以在其中运行程序了。
// This is the main function
fn main() {
// when the compiled binary is called statements are executed
// Print text to the console
println!("Hello, I'm using Rust.");
}
输出:
Hello, I'm using Rust.
正确执行所有这些步骤,我们可以在 VS Code 中运行和调试 Rust 程序。应优先安装扩展及其配置,以确保你可以运行 Rust 程序。