它碰巧需要编译一个文件夹中的所有*.c文件,除了一个文件夹之外,这个文件夹具有完全相同的名称,并且是从其他地方编译的。我通过为我想要的每个文件分别提供vpath来解决问题
vpath plant.c $(KMLROOT)/examples/$(KML_FLAVOUR)/pdk
vpath app.c $(KMLROOT)/examples/$(KML_FLAVOUR)/pdk
vpath app_test.c $(KMLROOT)/examples/$(KML_FLAVOUR)/pdk
vpath app_echo.c $(KMLROOT)/examples/$(KML_FLAVOUR)/pdk现在如果我写下
vpath %.c $(KMLROOT)/examples/$(KML_FLAVOUR)/pdk我不想包含的文件将位于path中。
有没有可能写一些规则并排除特定的文件?
发布于 2013-07-25 22:31:11
如果您需要为每个文件提供特定的路径,那么vpath是无用的。
由于您没有提供关于如何处理源文件的任何其他信息,我不能给出一个完整的示例,但您为什么不这样做:
KMLSRC = plant.c app.c app_test.c app_echo.c
KML_FULLSRC = $(addprefix $(KMLROOT)/examples/$(KML_FLAVOUR)/,$(KMLSRC))https://stackoverflow.com/questions/17857922
复制相似问题