zoukankan      html  css  js  c++  java
  • Makefile 宏定义 -D

    一、GCC编译器中使用:
            -D macro=string,等价于在头文件中定义:#define   macro   string。

        例如:-D TRUE=true,等价于:#define   TRUE   true
            -D macro,等价于在头文件中定义:#define   macro   1,实际上也达到了定义:#define   macro的目的。

        例如:-D Linux,等价于:#define   LINUX   1(与#define   LINUX作用类似)。
            --define-macro   macro=string与-D macro=string作用相同。

     

    如:TEST.C 文件

    #include <stdio.h>
    #include <stdlib.h>
    
    main()
    {
    #ifdef p1
      printf("Hello p1");
    #else
      printf("Hello p2");
    #endif
     
    }

     

    1.编译: gcc -o test test.c

    运行: ./test

    输出: Hello p2

    2.编译: gcc -o test test.c -D p1

    运行: ./test

    输出: Hello p1

     

    二、Makefile中进行宏定义-D

    在Makefile中我们可以通过宏定义来控制源程序的编译。只要在Makefile中的CFLAGS中通过选项-D来指定你于定义的宏即可。

    如:
    CFLAGS += -D _YUQIANG

    在编译的时候加上此选项就可以了: $(CC) $(CFLAGS) $^ -o $@ 

     

    DEFINES +=  -D BVS_DIRECTION=$(BVS_DIRECTION) 
    
                -D BVS_LAYOUT=$(BVS_LAYOUT) 
    
                -D $(BVS_TYPE)

     

  • 相关阅读:
    行转列函数listagg() WITHIN GROUP ()
    位图索引
    windows 杀掉进程
    vue 实践(过滤器)
    vue 总结
    vue v-show v-if 的使用
    vue v-for 绑定数据
    vue v-model实现数据的双向绑定
    vue .stop .self .capture .prevent 阻止冒泡
    vue v-on v-text 的运用
  • 原文地址:https://www.cnblogs.com/pjl1119/p/9799016.html
Copyright © 2011-2022 走看看