Kompilieren von TeX-Dateien mit verschiedenen Engines

Kompilieren von TeX-Dateien mit verschiedenen Engines

Eine Engine, beispielsweise pdfLaTeX, generiert beim Kompilieren einer TeX-Datei eine Reihe von Dateien. Meine Frage lautet: Müssen wir alle diese generierten Dateien löschen, um eine korrekte Kompilierung sicherzustellen, wenn wir zu einer anderen Engine wechseln, beispielsweise hier XeLaTeX?

Ich verwende LaTeX schon seit einiger Zeit und habe manchmal zwischen verschiedenen Engines gewechselt, bin jedoch, würde ich sagen, noch nie auf ein Kompilierungsproblem gestoßen.

Antwort1

Im Allgemeinen nicht, aber manchmal doch. Das heißt, das Löschen ist immer am sichersten, dauert dann aber auch länger, da möglicherweise mehr Durchläufe nötig sind, um Querverweise aufzulösen. Es ist jedoch immer möglich, dass in manchen Fällen Fehler auftreten und Sie löschen müssen. In diesen Fällen ist es schneller, zuerst zu löschen.

Ich persönlich lösche nichts, es sei denn, es liegt ein Fehler vor.


Der häufigste Grund für Fehler in „alten“ AUX-Dateien beim Wechseln der Engine ist nicht so sehr der Wechsel der Engine, sondern eher ein Paket- oder Optionswechsel, der nach Erkennung der verwendeten Engine andere Standardwerte angenommen hat.

Diese Datei funktioniert beispielsweise mit pdflatex oder lualatex (oder xelatex), aber Sie müssen die aux- und toc-Datei löschen, wenn Sie von pdflatex zu luatex wechseln, da die Inhaltsverzeichnisinformationen mit inputencinternen Befehlen geschrieben werden, die im Fall von luatex/xetex nicht definiert sind.

Hier gibt es einen ziemlich offensichtlichen expliziten Test für die verwendete Engine und einen Zweig, der Inputenc und Fontenc lädt. In anderen Fällen kann der Codezweig jedoch in einem Paketcode verborgen sein und im Dokument nicht sichtbar sein, aber ähnliche Auswirkungen in der AUX-Datei haben.

\documentclass{article}

\ifx\Umathchar\undefined
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\fi

\begin{document}
\tableofcontents

\section{hellö world}

\end{document}

verwandte Informationen