Estou construindo fora do código-fonte, então meu comando de construção fica assim
pdflatex -shell-escape --halt-on-error -output-directory="/tmp/build" book.tex
Tenho usado o minted para realce de sintaxe
\newcommand{\mintedoptions}{cachedir=/tmp/mint}
\usepackage[\mintedoptions]{minted}
\begin{document}
\inputminted{c}{program.c}
\end{document}
Isso estava funcionando bem, mas quando tentei apresentar \begin{minted}{c}...\end{minted}
recebi este erro:
! Package minted Error: Missing Pygments output; \inputminted was
probably given a file that does not exist--otherwise, you may need
the outputdir package option, or may be using an incompatible build tool.
Este problema temfoi resolvido, apliquei a correção ao meu documento
\newcommand{\mintedoptions}{cachedir=/tmp/mint,outputdir=/tmp/build}
agora o documento compila aparentemente corretamente, mas o cache criado não parece ser usado - a compilação é muito lenta porque todos os trechos de código criados estão sendo recompilados do zero a cada vez
Como posso especificar o outputdir e manter o cache em uso?
Aqui está um MWE completo
\documentclass[a4paper,10pt]{scrbook}
\newcommand{\mintedoptions}{cachedir=/tmp/mint2,outputdir=/tmp/xxx}
\usepackage[\mintedoptions]{minted}
\begin{document}
\inputminted{c}{program.c}
\begin{minted}{c}
int main ();
\end{minted}
\end{document}
Compilado com
mkdir /tmp/xxx && pdflatex -shell-escape --halt-on-error -output-directory="/tmp/xxx" mwe.tex