![tikzexternalize는 FreeBSD에서 손상된 makefile을 생성합니다.](https://rvso.com/image/400381/tikzexternalize%EB%8A%94%20FreeBSD%EC%97%90%EC%84%9C%20%EC%86%90%EC%83%81%EB%90%9C%20makefile%EC%9D%84%20%EC%83%9D%EC%84%B1%ED%95%A9%EB%8B%88%EB%8B%A4..png)
다음은 mwe.tex
FreeBSD에서 작동하지 않는 makefile을 생성합니다. 대부분 매뉴얼에서 따왔습니다 pgfplots
.
\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\usepgfplotslibrary{external}
\tikzexternalize[mode=list and make]
\begin{document}
\begin{figure}
\begin{tikzpicture}
\begin{axis}
\addplot {x^2};
\end{axis}
\end{tikzpicture}
\caption{Our first external graphics example}
\end{figure}
\end{document}
컴파일되어 pdflatex mwe.tex
다음 makefile이 생성됩니다.
ALL_FIGURE_NAMES=$(shell cat mwe.figlist)
ALL_FIGURES=$(ALL_FIGURE_NAMES:%=%.pdf)
allimages: $(ALL_FIGURES)
@echo All images exist now. Use make -B to re-generate them.
FORCEREMAKE:
include $(ALL_FIGURE_NAMES:%=%.dep)
%.dep:
mkdir -p "$(dir $@)"
touch "$@" # will be filled later.
mwe-figure0.pdf:
pdflatex -halt-on-error -interaction=batchmode -jobname "mwe-figure0" "\def\tikzexternalrealjob{mwe}\input{mwe}"
mwe-figure0.pdf: mwe-figure0.md5
make -f mwe.makefile
다음 출력으로 호출이 실패합니다.
/tmp/tmp.GXQ4YxVM [ make -f mwe.makefile ] 4:18 nachm.
make: "/tmp/tmp.GXQ4YxVM/mwe.makefile" line 9: Could not find .dep
make: Fatal errors encountered -- cannot continue
make: stopped in /tmp/tmp.GXQ4YxVM
답변1
FreeBSD자체 구현이 make
다음과 완전히 호환되지 않습니다.암소 비슷한 일종의 영양구현; 라이브러리 에서 생성된 makefile이 externalize
다음보다 더 많은 것을 사용하고 있습니다.POSIX의 기능 세트입니다 make
.
사용하여암소 비슷한 일종의 영양 make
FreeBSD에서 제공하는 명령 gmake
은 gmake -f mwe.makefile
다음과 같은 출력을 생성합니다.
mkdir -p "./"
touch "mwe-figure0.dep" # will be filled later.
pdflatex -halt-on-error -interaction=batchmode -jobname "mwe-figure0" "\def\tikzexternalrealjob{mwe}\input{mwe}"
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
All images exist now. Use make -B to re-generate them.