在makefile通过宏定义来控制源程序的编译

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

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

Makefile文件内容如下:

TARGET := test
CFLAGS += -D _XXX

all:$(TARGET)

$(TARGET):main.c
gcc $(CFLAGS) $^ -o $@

clean:
-rm -f *.o
-rm -f $(TARGET) 

main.c文件的内容为: 

#include <stdio.h>

int main()
{
#ifdef _XXX
    printf("Hello world 1111111/n");
#else
    printf("Hello world 2222222/n");
#endif

    return 0;
}

编译执行后,结果打印

Hello world 1111111
原文地址:https://www.cnblogs.com/jly594761082/p/10417155.html