我可以使用调试符号和发布标志进行货物构建吗?

Can I do a cargo build with debug symbols as well as release flag?

我正在调试我的 cargo 项目。我通常使用 --release 标志构建它。但是当我在 gdb 中看到堆栈跟踪时,可读性不是很好。我发现我可以 create debug symbolsdebug=true in Cargo.toml。

我还能在 cargo build 中使用 --release 标志吗?这不矛盾吗?这就是旗帜的终端帮助所说的 -

--release Build artifacts in release mode, with optimizations

我事先问这个是为了清楚,因为调试 运行 需要几个小时才能解决问题。

--release 编译,并有一个 Cargo.toml

[profile.release]
debug=True

并且确实会包括调试符号以及执行优化。两者并不矛盾。

你的 Cargo.toml[profile.release] table 只告诉 cargo 当你传递 --release 标志时你想使用什么配置选项。其他选项包括调整 LTO、优化级别和 enabling/disabling rpath。