在Makefile的"addprefix"中转义字符

use*_*717 2 makefile

我有一个库列表:

lib_paths := dir1 dir2 dir3
Run Code Online (Sandbox Code Playgroud)

我想通过我的rpath添加

LDFLAGS += (addprefix -Wl,-rpath,$(lib_paths))
Run Code Online (Sandbox Code Playgroud)

当然,这会失败,因为它,addprefixMakefile中函数的分隔符.我怎么能逃脱逗号?

Mad*_*ist 6

你必须把它放在一个变量中.Make会扩展它们之前打破对逗号的参数,因此:

comma = ,

LDFLAGS += $(addprefix -Wl$(comma)-rpath,$(lib_paths))
Run Code Online (Sandbox Code Playgroud)