Undefined control sequence

! Undefined control sequence ist der häufigste LaTeX-Fehler: LaTeX ist auf einen Befehl (\name) gestoßen, den es nicht kennt. Fast immer liegt es an einem Tippfehler, einem nicht geladenen Paket oder einem eigenen Befehl, der nie definiert wurde. Diese Seite geht die Fälle der Reihe nach durch.

Wie die Meldung aussieht

Die Meldung beginnt mit ! Undefined control sequence; danach zeigt l.NN die Zeile, direkt nach dem unbekannten Befehl umgebrochen. Das Token unmittelbar vor dem Umbruch ist der Befehl, den LaTeX nicht kennt. Hier ist \frac versehentlich als \fra geschrieben (zum allgemeinen Lesen von Fehlern siehe „Fehler lesen und debuggen“):

terminal
! Undefined control sequence.
l.12 \fra
         c{1}{2}

Drei Ursachen und Lösungen

  • Ein Tippfehler (am häufigsten) — \fra\frac, \textbnf\textbf. Schreibweise korrigieren.
  • Ein Paket ist nicht geladen — das Paket des Befehls wurde nie mit \usepackage geladen, etwa \includegraphics braucht graphicx, \toprule braucht booktabs, viele mathematische Symbole brauchen amsmath. In der Präambel laden.
  • Ein eigener Befehl ist nicht definiert\newcommand vergessen, vor der Definition benutzt oder außerhalb des Gültigkeitsbereichs. Die Definition vor der ersten Verwendung setzen.

So findest du die Stelle

Das Token direkt vor l.NN ist der undefinierte Befehl; sieh dir also diese Zeile im Editor an. Wenn nichts auffällt, verdächtige einen kürzlich hinzugefügten Befehl oder ein Paket. Um herauszufinden, welches Paket einen Befehl bereitstellt, hilft texdoc PACKAGE. Zum Eingrenzen die verdächtige Stelle auskommentieren und neu kompilieren.