Xcode 断点失效怎么解?

1,733 阅读1分钟

前言

日常开发中相信都会遇到 Xcode 断点失效的情况,断点变成虚线框,之前开发遇到过几次,记录下解决对应的设置,依次执行大概率能解决

image.png

1. 检查代码是否编译

  • 确保你的代码已经成功编译,否则 Xcode 可能无法正确加载符号表。
  • 清理项目 (Cmd + Shift + K),然后重新编译 (Cmd + B)。
  • 确保代码能执行到断点位置 确保Build Setting -> Preprocessing 中 DEBUG=1
  • Xcode 断点开关是 enable 状态

image.png

2. 检查优化级别 (Optimization Level)

  • Build Settings 中搜索 Optimization LevelSWIFT_OPTIMIZATION_LEVELGCC_OPTIMIZATION_LEVEL)。
  • 如果 Debug 目标的优化级别是 -Onone,否则编译器可能会优化掉代码,使断点无效。改成其他选项 image.png

3. 检查符号调试信息 (Debug Symbols)

  • Build Settings 搜索 Debug Information Format,确保它设置为 DWARF with dSYM File,否则可能无法加载符号。 image.png

4. Scheme Build Configuration

Xcode工具栏 -> Product -> Scheme -> Edit Scheme -> Run -> Build Configuration 切换成 Debug

image.png

5. 取消Always Show Disassembly的选中状态.

Xcode工具栏 -> Debug -> Debug Workflow -> 取消Always Show Disassembly image.png

总结

如果以上方式仍然不行,只能使用重启大法了,重启 Xcode 重启 Mac,建议工程区分好 debug 和 release 的build setting的选项