使用ifeq在Makefile中定义条件变量
我试图根据条件在Makefile中定义变量。由于ifeq只能在规则中运行,因此我为每个规则添加了一个附加规则(def_规则) 例如:使用ifeq在Makefile中定义条件变量,makefile,conditional,Makefile,Conditional,我试图根据条件在Makefile中定义变量。由于ifeq只能在规则中运行,因此我为每个规则添加了一个附加规则(def_规则) 例如: def_rule: ifeq ($(TARGET), android) CC=arm-linux-androideabi-gcc else echo "native build" endf all: def_rule tp xi_eid_chipset.o 不幸的是,调用make all会返回以下结果: ifeq(linux,andro
def_rule:
ifeq ($(TARGET), android)
CC=arm-linux-androideabi-gcc
else
echo "native build"
endf
all: def_rule tp xi_eid_chipset.o
不幸的是,调用make all会返回以下结果:
ifeq(linux,android)/bin/sh:语法错误:单词unexpected(应为“)”)
make:**[def_规则]错误2 我不明白为什么。我刚刚跟随了GNU Make文档中的示例
您知道如何在Makefiles中定义条件吗?条件可以超出规则:
ifeq ($(TARGET), android)
$(info Android)
CC=arm-linux-androideabi-gcc
else
$(info native build)
CC=something else
endif
(请注意,为了便于阅读,我在前面加了几个空格,它们既不是必需的,也不是有害的。)信息做什么?@red888:它将参数打印到标准输出。医生。