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) 是 mane 目标的依赖项,因此应该重新编译。我尝试了很多配置,但结果相同。
只是我缺少一些东西,谢谢您的启发。
I had a Makefile template to generate my latex documents, but there is an issue I don't understand...
My main latex file include other latex files located in ./includes/. The thing is whenever I make a modification in one of these files MAKE just don't see it and won't recompile.
The relevant part of the Makefile is this :
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)/lt;'
$(BIB) '$(PWD)/$(shell basename $(DOC) .tex)'
$(TEX) '$(PWD)/lt;'
$(TEX) '$(PWD)/lt;'
$(INCLUDES) is a dependency for the mane target so it should recompile. I have tried many configurations with the same result.
There is just something I'm missing, thanks to enlighten me.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您的
$(INCLUDES)
变量将扩展为空(它是空的)。它应包含 .pdf 包含的文件列表。以下代码使用
includes/
目录中的所有 .tex 文件对其进行初始化:Your
$(INCLUDES)
variable expands to nothing (it is empty). It should contain a list of files included by the .pdf.The following initializes it with all .tex files from
includes/
directory: