• 在Makefile中进行宏定义-D


    在源代码里面如果这样是定义的:
    #ifdef   MACRONAME
    //可选代码
    #endif

    那在makefile里面
    gcc   -D   MACRONAME=MACRODEF
    或者
    gcc   -D   MACRONAME

    关键词: Make宏定义 Make传递宏定义 Makefile中添加宏定义 Makefile -D


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

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

    下面是我写的一个测试文件:

    例如:

    Makefile文件内容为:

    CC = gcc
    RM = rm

    CFLAGS += -D _YUQIANG

    TARGETS := myapp

    all:$(TARGETS)

    $(TARGETS):main.c
    $(CC) $(CFLAGS) $^ -o $@

    clean:
    -$(RM) -f *.o
    -$(RM) -f $(TARGETS)

    main.c文件的内容为:
    #include <stdio.h>

    int main()
    {

    #ifdef _YUQIANG
    printf("Hello Yu Qiang, How are you?/n");
    #else
    printf("Sorry to lost you. /n");
    #endif

    return 0;
    }

    在端口中输入    make clean all
    然后输入           ./myapp

    结果                  Hello Yu Qiang, How are you?

  • 相关阅读:
    bzoj [POI2015]Myjnie
    bzoj2217 [Poi2011]Lollipop
    Codeforces A Mist of Florescence
    bzoj4380 [POI2015]Myjnie
    bzoj4292 [PA2015]Równanie
    bzoj 3517翻硬币
    模块补充
    python解释器
    __file__、__name__、__dict__方法整理
    软件开发规范
  • 原文地址:https://www.cnblogs.com/thoughtInShare/p/14089292.html
Copyright © 2020-2023  润新知