Latex Makefile没有看到包含文件的更改

时间:2011-08-17 13:20:54

标签: latex makefile

我有一个Makefile模板来生成我的乳胶文档,但有一个我不明白的问题......

我的主要乳胶文件包含位于./includes/中的其他乳胶文件。问题是每当我在其中一个文件中进行修改时,MAKE只是看不到它而且不会重新编译。

Makefile的相关部分是:

DOC ?= report.tex
PDF := $(DOC:.tex=.pdf)

INCLUDES ?=

IMG_DIRS ?= img

IMG_FILES := $(wildcard $(IMG_DIRS)/*.svg $(IMG_DIRS)/*.png)

IMG_EPS := $(patsubst %svg, %eps, $(patsubst %png, %eps, $(IMG_FILES)))

all: pdf

pdf: $(DOC) $(INCLUDES) $(BIBLIOS) $(STYLES) $(IMG_FILES) $(IMG_EPS) $(PDF)

%pdf: %tex
    $(TEX) '$(PWD)/$<'
    $(BIB) '$(PWD)/$(shell basename $(DOC) .tex)'
    $(TEX) '$(PWD)/$<'
    $(TEX) '$(PWD)/$<'

$(INCLUDES)是鬃毛目标的依赖项,因此它应该重新编译。我尝试了许多具有相同结果的配置。

由于启发我,我只缺少一些东西。

1 个答案:

答案 0 :(得分:1)

您的$(INCLUDES)变量展开为空(它为空)。它应该包含.pdf包含的文件列表。

以下内容使用includes/目录中的所有.tex文件对其进行初始化:

INCLUDES := $(wildcard includes/*.tex)