【发布时间】:2016-03-07 20:50:52
【问题描述】:
我想在 NMake 中组合宏?我是这样开始的。
nmake -f C:\Users\Administrator\Desktop\build.makefile TEST
但是输出是
fatal error U1001: syntax error : illegal character '$' in macro
Stop.
而不是-03
FLAGS_PLATFORM = %PLATFORM%
FLAGS_BUILD_TYPE = %BUILD_TYPE%
FLAGS_X86_RELEASE = -O3
FLAGS_X86_DEBUG = -O3
FLAGS_X64_RELEASE = -O3
FLAGS_X64_DEBUG = -O3
FLAGS_COMPILER_X86 = compiler.exe
FLAGS_COMPILER_X64 = compiler.exe
FLAGS = $(FLAGS_$(FLAGS_PLATFORM)_$(FLAGS_BUILD_TYPE))
TEST:
echo "$(FLAGS)"
【问题讨论】:
-
您的 FLAGS 行中有不平衡的括号。您也许可以使用类似:
FLAGS = $(FLAGS_$(FLAGS_PLATFORM)_$(FLAGS_BUILD_TYPE)),但这可能是不允许的。 (make的某些版本可能会接受它,例如 GNUmake;许多其他版本不会。我不知道 NMake 落在哪里。) -
@JonathanLeffler 我用 GNU
make尝试过,但我得到的只是“”。
标签: c++ visual-studio makefile nmake