我的代码使用我在构建过程中定义的一个宏,如下所示。
gcc -D VAR=1000 main.c -0 main
但我想创建两个可执行文件,一个 VAR=1000,另一个 VAR=2000。假设可执行文件名称为 main_1000 和 main_2000。
我怎样才能使用 Makefile 做到这一点。
我的尝试如下。但它不起作用并给我一个错误。
gcc -g -c -o main.o main.c
main.c: In function ‘main’:
main.c:5:16: error: ‘VAR’ undeclared (first use in this function)
main.c:5:16: note: each undeclared identifier is reported only once for each function it appears in
make: *** [main.o] Error 1
生成文件:
CC=gcc
CFLAGS=-g
all: main_1000 main_2000
main_1000: main.o
$(CC) -D VAR=1000 -o main_1000 main.o $(CFLAGS)
main_2000: main.o
$(CC) -D VAR=2000 -o main_2000 main.o $(CFLAGS)