я следующий целевой gmake:
$(GCH_demo): $(PCH_demo) | $$(@D) prebuild_demo
@echo PCH $<
-cp $< $(@D)
$(CXX_demo) $(strip $(CPPFLAGS_demo) $(CXXFLAGS_demo)) -o [email protected] -c $<
Здесь обратите внимание на $ (@ D):
- В предпосылку, мне нужно уйти от доллара, так как: $$ (@ D)
- В рецепте, не уйдешь не требуется:: $ (@ D)
Насколько я понимаю, я хочу, чтобы эта автоматическая переменная была расширена, поэтому в обоих случаях ее не следует избегать - но, оказывается, она не будет работать, если я не уйду из доллара в обязательной строке.
Любая идея?
Спасибо.
Прочтите [это] (http://www.gnu.org/software/make/manual/make.html#Rule-Syntax) раздел из [manual] (http://www.gnu.org/software /make/manual/make.html). – devnull
@devnull Да, я имею - вы имеете в виду «если вы действительно хотите, чтобы знак доллара был в мишени или предпосылке, вы должны написать два из них»? НЕТ - я не думаю, что хочу знак доллара, я просто хочу, чтобы он был расширен –