Когда вы говорите «положить в нужную папку», какая это папка?
Это явно не локальный каталог, потому что если бы это был ваш make-файл, то он работал бы.
Первое неправильно, у вас неправильный синтаксис для vpath
. См. Руководство; vpath
принимает шаблон make-файла (это строка с нулем или одним %
символом); он не поддерживает сглаживание оболочки, например *.h
. Это должно быть написано:
vpath %.pdf ../../../Figures/Arrowshape/ChemicalNoise
Однако даже с этим исправлением ваш make-файл не будет работать, как вы надеетесь, потому что vpath
не предназначен для поиска целей . Он предназначен для поиска исходных файлов (то есть файлов, которые не созданы make).
Если вы хотите глубоко это понять, вы можете прочитать http://make.mad-scientist.net/papers/how-not-to-use-vpath/
Чтобы заставить ваш make-файл работать так, как вы хотите, вам нужно добавить пути, например:
OUTDIR = ../../../Figures/Arrowshape/ChemicalNoise
all : $(OUTDIR)/Fig_VP-CN-Revols_MeanfromDist_Dac0.0_F0.0-4.0_0to2.pdf\
$(OUTDIR)/Fig_VP-CN-Revols_MeanfromDist_Dac0.0_F0.0-4.0_2to4.pdf\
$(OUTDIR)/Fig_VP-CN-Revols_MeanfromDistImshow_Dac0.0_F0.0-4.0.pdf
$(OUTDIR)/Fig_%.pdf : %.py
$(warning Building $@ )
python $<
$(OUTDIR)/Fig_%_2to4.pdf : %.py
$(warning Building $@ )
python $<
$(OUTDIR)/Fig_%_0to2.pdf : %.py
$(warning Building $@ )
python $<