• Xcode Build Setting之Compiler flags


    Xcode Build Setting之Compiler flags
    1、 Compiler flags设置方式

    Compiler flags在编译时定义常量,之后我们就可以在代码中使用这些长常量。有三种方式可以设置常量,分别如下

    • OTHER_CFLAGS(other C Flags)
    • GCC_RREPROCESSOR_DEFINITIONS(Preprocessor Macros)
    • INFOPLIST_PREPROCESSOR_DEFINITIONS(info.plist Preprocessor Definitions)

    三者的不同之处

    • 传递给编译器的方式不同

    在于使用other C Flags设置的宏是直接传递给编译器

    • 使用方式不同

    (1)使用other C Flags设置宏时,需要加上“-D”前缀,例如设置DEBUG的宏,格式如下,编译器接收到设置后会定义“DEBUG”的宏

    OTHER_CFLAGS=‘-DDEBUG’
    
    • 1

    (2)使用另外两种方式设置时,也就是使用预处理器设置时在传递给编译器之前会自动加上“-D”,所以使用另外两种方式设置宏时只需要关系业务使用的宏名字即可

    GCC_RREPROCESSOR_DEFINITIONS=‘-DEBUG’
    
    • 1
    2、Compiler flags 的值

    常量本质上是bool值,不过可以设置值(DEBUG=1)或者仅是常量定义(DEBUG)

    扩展:OTHER_CFLAGS (Other C Flags)介绍

    Description:Space-separated list of option specifications. Specifies additional options for compiling C-based precompiled headers and implementation files. These options are passed (as given) to the compiler whether other build settings also specify values that correspond to these options. Therefore, you should look for the appropriate compiler build setting to specify a particular compiler option before using this build setting.
    Default value:None.
    Example value:-dM
    Affects:OTHER_CPLUSPLUSFLAGS (Other C++ Flags).
    Related to:OTHER_CFLAGS_.

    Other C Flags

    形式:以空格分隔的选项规格列表

    作用:指定用于编译基于C的预编译头文件和实现文件的选项。无论其他build setting是否也指定了与这些选项对应的值,这些选项都会传递给编译器

  • 相关阅读:
    易用性测试
    电压跌落检测
    MySQL JSON 数组用于 WHERE IN 子句
    Spring Data JPA 之 多数据源配置
    Mybatis深入:数据源概念介绍
    贪心算法刷题(一)hdu 1050
    半导体聚合物纳米颗粒,PSQPNs-DBCO点击化学, 二苯并环辛炔-PSQPNs
    人大金仓分析型数据库COPY装载数据
    Spring-ApplicationContext refresh的流程
    一文入门SpringMVC
  • 原文地址:https://blog.csdn.net/u011774517/article/details/126782167