解决在macOS系统上使用rust-gdb调式rust代码时无法进入断点的问题

     问题title缩写,主要原因是gdb 无法在cargo生成可执行文件和符号信息关联起来,类型信息如下图:

 

  解决方案:在Cargo.toml文件中添加一项配置,所以能找到符号信息.

  

 

配置信息说明:

  1.  profile.dev或者profile.release是用cargo build进行编译时使用到的配置信息的意思。dev是就是直接build,release是 cargo build --release;

      2. opt-level是优化等级,0就是不优化,3是最高优化等级。 进行debug时一般为了能和代码匹配上,所以dev就不用优化是0;

      3. debug=true 或者fasle 是指编译的可执行文件是否支持debug功能;

      4. split-debuginfo="packed"  简单点说就是编译生成的调试信息与可执行文件放在一起。这样才能找到需要的符号信息,并且这个配置项在macOS系统默认是不开启的(参考:https://doc.rust-lang.org/cargo/reference/profiles.html );

 

 

 

posted @   朝花不夕拾  阅读(255)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示