我正在尝试在VSCode上使用LLDB进行调试。我在库中添加了一个断点,该断点在断点处停止,但是我得到了一个带有未命名符号的调用栈,并且看不到任何变量:
这是我使用cargo build --example my_example_name
构建的库中的示例。我研究了要在发布模式下构建,应该添加--release
。所以我认为我是在调试模式下构建的。
我猜该库是在发布模式下以某种方式构建的。我该如何检查?
如果将断点放在示例文件本身中,则在发生断点时会出现符号。当我将断点放在示例所用的库中时,发生断点时不会出现任何符号。
cargo build --example my_example
是否有可能在调试模式下构建示例,而库在释放模式下构建?
根据https://doc.rust-lang.org/cargo/commands/cargo-build.html,“依赖项使用dev
/ release
配置文件。]
要覆盖它,您可以尝试RUSTFLAGS=-g cargo build ...
(-g
等于-C debuginfo=2
)。