makefile中传编译参数
时间: 2024-03-13 15:39:00 浏览: 44
在Makefile中,可以使用变量来传递编译参数。变量可以在Makefile中定义,也可以在命令行中传递。在Makefile中,可以使用`$(VAR)`或`${VAR}`的形式来引用变量。以下是一个示例Makefile,其中定义了一个变量`CC`来指定编译器,以及一个变量`CFLAGS`来指定编译选项:
```makefile
CC=gcc
CFLAGS=-Wall -O2
all: hello
hello: hello.c
$(CC) $(CFLAGS) -o $@ $<
clean:
rm -f hello
```
在上面的Makefile中,`CC`变量指定了编译器为`gcc`,`CFLAGS`变量指定了编译选项为`-Wall -O2`。在`hello`目标的命令中,使用了`$(CC)`和`$(CFLAGS)`来引用这两个变量。在命令行中,可以通过在`make`命令后面加上变量名和值的形式来传递变量,例如:
```
make CC=clang CFLAGS=-O3
```
这样就可以将`CC`变量的值设为`clang`,`CFLAGS`变量的值设为`-O3`。在Makefile中,可以使用`$(VAR)`或`${VAR}`的形式来引用这些变量。
阅读全文