带有输出目录的 pdflatex bibtex 的最小 Makefile

带有输出目录的 pdflatex bibtex 的最小 Makefile

有人有一个最小的 Makefile 吗,它使用

  • pdflatex
  • 比博特
  • pdflatex
  • pdflatex

同时将所有输出文件放在特殊的输出目录中以避免使根目录混乱?

答案1

这里还有另一个类似的问题:

当文件包含在子目录中时,如何在使用 pdflatex 的 -output-directory 标志后运行 bibtex?

这是我的答案(略有修改):

现在运行类似

mkdir OUT
TEXMFOUTPUT="OUT"
pdflatex --output-directory OUT myfile
bibtex OUT/myfile
pdflatex --output-directory OUT myfile
pdflatex --output-directory OUT myfile

产生预期的结果,并且完全可以编写脚本。

如果您收到以下消息:

bibtex: Not writing to  $TEXMFOUTPUT/src.blg (openout_any = p).

那么您需要以下小技巧。问题是 bibtex 写入 $TEXMFOUTPUT 的能力受到限制,以避免文件覆盖,并且 bibtex 命令返回错误消息。

打开文件texmf.cnf,不知道Windows上的情况,但在Linux上:

/usr/share/texlive/texmf/web2c/texmf.cnf (UBUNTU TEXLIVE)
/usr/share/texmf-dist/web2c/texmf.cnf (ARCH LINUX TEXLIVE)

找到该openout_any = p行并将其更改为a始终或r受限制(p 代表偏执狂)。

相关内容