Keine Panik: «No default toolchain configured» in Rust — Lösung

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Einleitung: Der bekannte Schmerz jedes Rust-Anfängers

\n\n

Sie haben gerade Rust installiert, der Anleitung auf der offiziellen Website folgend, öffnen das Terminal und geben mit angehaltenem Atem rustc --version ein. Und dann – peng! – statt einer schönen Zeile mit der Versionsnummer sehen Sie einen kalten, erschreckenden Text: «No default toolchain configured after installing rustup».

\n\n

Kommt Ihnen das bekannt vor? Wenn ja, sind Sie nicht allein. Diese Frage auf Stack Overflow hat Tausende von Aufrufen und Dutzende von Kommentaren gesammelt. Aber geraten Sie nicht in Panik und löschen Sie nicht gleich alles. In diesem Artikel werden wir erklären, was ein Toolchain ist, warum rustup ihn nicht finden kann, und vor allem, wie Sie das ein für alle Mal beheben können. Wir gehen den Weg von null bis zu einer funktionierenden Rust-Entwicklungsumgebung.

\n\n

Bereit? Los geht's!

\n\n

Was ist ein Toolchain und warum «vergisst» rustup ihn?

\n\n

Bevor wir uns in die Tiefe stürzen, klären wir die Begriffe. Ein Toolchain (Werkzeugkette) ist eine Sammlung von Werkzeugen, die zum Kompilieren und Bauen von Rust-Code benötigt werden. Dazu gehören:

\n\n
    \n
  • rustc – der Compiler selbst;
  • \n
  • cargo – der Paketmanager und das Build-System;
  • \n
  • rust-std – die Standardbibliothek;
  • \n
  • Und andere Komponenten (z. B. clippy zum Linting).
  • \n
\n\n

Rustup ist der offizielle Installer und Versionsmanager für Rust. Er ermöglicht es, zwischen verschiedenen Compiler-Versionen zu wechseln: stabil (stable), nächtlich (nightly) und Testversion (beta). Wenn Sie rustup install stable eingeben, lädt rustup den entsprechenden Toolchain herunter und speichert ihn auf der Festplatte.

\n\n

Der Fehler «No default toolchain configured» tritt auf, wenn rustup nicht bestimmen kann, welche Toolchain-Version standardmäßig verwendet werden soll. Das ist vergleichbar mit einer Situation, in der Sie in eine Bibliothek kommen, aber nicht wissen, welches Buch Sie zuerst lesen sollen. Rustup weiß einfach nicht, welchen Compiler es starten soll.

\n\n

Die Ursachen können vielfältig sein:

\n
    \n
  • Sie haben gerade rustup installiert, aber noch keinen Toolchain installiert;
  • \n
  • Die Installation wurde aufgrund von Netzwerkproblemen unterbrochen;
  • \n
  • Sie haben den Toolchain manuell gelöscht;
  • \n
  • Probleme mit den Zugriffsrechten auf den Ordner ~/.rustup.
  • \n
\n\n

Diagnose: Überprüfen des aktuellen Zustands

\n\n

Bevor wir etwas reparieren, schauen wir uns an, was wir haben. Öffnen Sie das Terminal und führen Sie den Befehl aus:

\n\n
rustup show
\n\n

Sie sollten etwas Ähnliches sehen (wenn alles schlecht ist):

\n\n
Default host: x86_64-unknown-linux-gnu\nrustup home:  /home/user/.rustup\n\ninstalled toolchains\n--------------------\n\nactive toolchain\n----------------\n(no active toolchain)
\n\n

Achten Sie auf die Zeile «no active toolchain». Das ist die Wurzel des Übels. Lassen Sie uns das beheben.

\n\n

Lösung Nr. 1: Installation und Konfiguration des default toolchain

\n\n

Der einfachste und gebräuchlichste Weg ist, explizit den stabilen Toolchain zu installieren und ihn als Standardversion festzulegen.

\n\n

Führen Sie im Terminal aus:

\n\n
rustup install stable
\n\n

Dieser Befehl lädt die neueste stabile Version von Rust herunter und installiert sie. Der Vorgang kann einige Zeit dauern (normalerweise 1-3 Minuten, abhängig von Ihrer Internetgeschwindigkeit).

\n\n

Nach Abschluss der Installation müssen Sie diesen Toolchain als Standardversion «festlegen»:

\n\n
rustup default stable
\n\n

Überprüfen Sie nun das Ergebnis:

\n\n
rustup show
\n\n

Sie sollten einen aktiven Toolchain sehen. Sie können auch den Compiler überprüfen:

\n\n
rustc --version
\n\n

Wenn Sie etwas wie rustc 1.78.0 (9b00956e5 2024-04-29) sehen – herzlichen Glückwunsch, das Problem ist gelöst!

\n\n

Lösung Nr. 2: Verwendung des nightly toolchain (für Experimentierfreudige)

\n\n

Manchmal benötigen Sie die nächtliche Version des Compilers, zum Beispiel für

Blogs

Buchempfehlungen