【问题标题】:How to setup Xcodes "debug/release target settings"?如何设置 Xcode“调试/发布目标设置”?
【发布时间】:2011-01-02 07:00:59
【问题描述】:

我在这里找到了一组很棒的宏Objective C Macros

我把:

#if DEBUG==1
#define .... macros

在我的头文件中。

现在我根本不知道在 Xcode 中设置 DEBUG=1DEBUG=0 的位置,以便 它会在调试时定义宏,而不是在发布时定义。

希望有人能帮我找到丢失的下拉菜单:)

【问题讨论】:

    标签: objective-c iphone xcode macros c-preprocessor


    【解决方案1】:

    编辑:

    显然,在处理 iPhone 应用程序时,您必须:

    • 选择 iPhone 设备作为活动 SDK
    • 然后编辑项目或目标设置并在“其他 C 标志”中键入“-DDEBUG=1”

    编辑您的项目或目标设置,选择您的Debug 配置,然后查找“预处理器宏”设置并输入DEBUG=1

    但是,我宁愿在Release 配置中定义NDEBUG 然后写

    #ifndef NDEBUG // if we are in debug mode
    #define bla bla bla
    #endif
    

    注意:您需要有一个将 Objective-C 源文件编译为库或应用程序的目标正确设置;否则设置不会出现在 UI 中。

    【讨论】:

    • 大家好,谢谢。我现在去了“项目”->“编辑项目设置”-“构建选项卡”,在“打包”标题下有一个“info.plist 预处理器定义”。手册中说,我采用空格分隔值。我尝试将“DEBUG=1”放在这里,然后重新启动 Xcode。但它不起作用?我尝试使用的所有 NSLog 宏都没有输出,但也没有警告或错误。似乎仍然 DEBUG=0。
    • 嗨 Gregory 我正在为 iPhone 模拟器编译和调试。这符合条件吗?如果我省略 if... 部分,它就可以正常工作。只是似乎我无法弄清楚在哪里定义 DEBUG。再次感谢您的帮助
    • 不,它应该在“GCC 4.0 Preprocessing”(或类似的)部分而不是“Packaging”
    • 谢谢格雷戈里!我在模拟器和设备中都像魅力一样工作。虽然不是最明显的到达那里的途径:) 再次感谢您解决这个问题。
    • 没错,这太糟糕了,一开始我尝试的时候很惊讶:) 玩得开心
    猜你喜欢
    • 2015-02-14
    • 1970-01-01
    • 2010-12-11
    • 2020-06-17
    • 2011-09-25
    • 2012-11-25
    • 1970-01-01
    • 2012-10-22
    • 2023-03-12
    相关资源
    最近更新 更多