GDB 在 Rust 可执行文件中找不到调试符号

GDB doesn't find debugging symbols in Rust executable

这是我的 Cargo.toml 调试设置:

[package] 
name = "rpolysolve" 
version = "0.1.0" 
authors = ["stiv"]

[dependencies] 
[profile.dev] 
debug = true  
opt-level = 0

正如我从控制台输出中看到的,cargo 没有删除调试符号:

Finished dev [unoptimized + debuginfo] target(s) in 5.66 secs

我已将 gdb-7.9.1-tdm64-2 下载到 windows7 上的 C:\gdb-7.9.1-tdm64-2 文件夹中。现在我尝试从项目文件夹中使用此命令启动它:

C:\gdb-7.9.1-tdm64-2\gdb64\bin\gdb.exe ./target/debug/rpolysolve.exe

GNU gdb (GDB) 7.9.1
... GNU blablabla cut here ...
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./target/debug/rpolysolve.exe...(no debugging symbols found)...done.

如您所见,未找到调试符号,现在我可以设置断点了。我该如何解决这个问题?

好的,解决方案是切换工具链,即让二进制文件与 GNU 兼容:

rustup install stable-gnu 
rustup default stable-gnu

不知道msvc工具链有没有gdb.exe