【问题标题】:How to turn off compiler optimisations in AppCode如何在 AppCode 中关闭编译器优化
【发布时间】:2012-08-27 12:42:46
【问题描述】:

我正在将一个 iOS 项目移植到 Android。我需要逐步了解 Objective C 类中的方法,以了解它们是如何工作的,并帮助编写单元测试来验证我的端口。 AppCode 是我选择的武器。

问题是,在调试时,我经常得到“由于优化而暂时不可用的值”,并且我无法检查大多数类、列表和数组。

我在 Xcode 中打开了项目并将编译器优化设置为“无”,然后在 AppCode 中打开它。我还尝试从 AppCode 中打开 Xcode 中的项目(File-> Open project in Xcode)。尽管项目属性没有显示优化,但我仍然无法查看大多数变量。我还在调试窗口中重复了变量,并且执行点在单步执行时会在代码周围跳转。这让我相信优化仍然处于开启状态。

我已通过 AppCode 中的调试首选项尝试使用 GDB 和 LLDB。

谁能拯救我的理智?

谢谢

西蒙

【问题讨论】:

    标签: xcode appcode


    【解决方案1】:

    您是否检查过您正在使用的运行/调试配置(在 AppCode 中)是调试(而不是发布)配置?运行 -> 编辑配置会弹出一个对话框,您可以在其中编辑每个配置。确保“配置”下拉菜单设置为“调试”。

    【讨论】:

    • 是的,它是调试。实际上,我还有更多的测试要做,如果它是正确的,我会回来回答 - 即选择标准的 LLVM 编译器而不是 Apple 的。至少对我来说,苹果似乎不遵守优化->无。
    • 这不太可能是问题所在。标准 Xcode 项目模板将 GCC_OPTIMIZATION_LEVEL 设置为 0 用于调试配置。如果这本身就引起了调试问题,那么 Xcode 用户就会涌入 Twitter。 JetBrains 有一个open bug database,我在那里没有找到类似的东西。也许您可以用项目和构建设置的更多详细信息来填写您的问题?
    • 您是否检查了构建日志以查看 xcodebuild 实际设置的优化级别?
    猜你喜欢
    • 1970-01-01
    • 2010-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-23
    • 1970-01-01
    • 2016-02-14
    相关资源
    最近更新 更多