【问题标题】:Xcode 4 / Cannot understand why some symbols are missing when debuggingXcode 4 /无法理解为什么调试时缺少某些符号
【发布时间】:2023-03-19 07:21:01
【问题描述】:

我最近切换到 Xcode 4,调试过程令人困惑。我阅读了 Xcode 手册,但仍然无法理解为什么在将指针放在编辑器中或执行“po xxxxxx”时 gdb 无法显示某些符号,其中 xxxx 是符号名称。我在无限循环中收到消息“无法访问变量”。

这看起来像一些调试符号已被删除(好像我在发布而不是调试,但这些概念从 Xcode 中消失了)。为了使这些符号可用,我应该激活一些东西吗?

问候, 弗朗茨

【问题讨论】:

  • Debug vs Release 在方案设置中可用。
  • 谢谢。我已在回复中完成了您的提示。
  • 我可以添加回复以使其接受吗? :)

标签: xcode debugging debug-symbols


【解决方案1】:

确实,在菜单栏中选择:产品 -> 管理方案。 播放按钮动作在列表上列为“运行”。单击“运行”附近的小箭头,因为“播放”可以与“发布”或“调试”构建相关联。 在弹出菜单中,切换到“调试”。 我现在可以在 gdb 窗口中看到一些带有 po xxxxx 的变量。在变量上传递指针时,我也可以看到变量值。

【讨论】:

    【解决方案2】:

    如果您从方案栏中转到编辑方案...,您可以更改哪些配置是发布的,哪些是调试的。

    【讨论】:

      【解决方案3】:

      检查以确保未启用任何优化。其中包括:

      • 链接时间优化(使变量调试消失)
      • 优化级别(设置为 O0 否则某些变量可能不可见)
      • 去除调试符号

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-04-15
        • 1970-01-01
        • 1970-01-01
        • 2011-03-05
        • 1970-01-01
        • 2015-11-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多