#gdb #probe #binding #ipdb #pry #set-trace

gdb_probe

ipdb.set_trace() / binding.pry,但适用于 rust

3 个版本

0.1.2 2019 年 2 月 6 日
0.1.1 2019 年 2 月 6 日
0.1.0 2019 年 2 月 6 日

#24#gdb

MIT 许可证

4KB

gdb_probe

你喜欢在 Python 中使用 ipdb.set_trace() 或者在 Ruby 中使用 binding.pry 吗?你因为 Rust 没有提供同样的便利而感到沮丧吗?gdb_probe 正在这里拯救这一天!通过一个简单的调用,它可以暂停当前进程,创建一个新的终端并附加 gdb。

如何使用

"gdb_probe="0.1" 添加到你的 Cargo.toml

extern crate gdb_probe;
use gdb_probe::gdb_probe;

fn main() {
    println!("Hello, world!");
    let x = 3+4;
    gdb_probe(); //spawns a new terminal (urxvt) with gdb attached at this position.
}

已知问题

警告 如果目标进程在调试器附加之前死亡,有时会调试 init。在这种情况下,强制终止调试器会导致重启。

依赖于 urxvt 终端。

依赖项

~1.5MB
~36K SLoC