pip 23+ · Python
Die Meldung
error: externally-managed-environment
Was es bedeutet
Dieses Python gehört dem Betriebssystem oder Homebrew, und pip weigert sich, dort hineinzuschreiben (PEP 668). Sie haben pip install auf den System-Interpreter angewendet; die Meldung fordert eine virtuelle Umgebung. --break-system-packages tut, was der Name sagt, und kann von apt verwaltete Dateien beschädigt zurücklassen — legen Sie stattdessen ein .venv an und installieren Sie darin.
Die Lösung
python3 -m venv .venv && source .venv/bin/activate- Ausgegeben von
- pip 23+
- Python
- 18
Ein Python-Traceback teilt die Antwort in zwei Hälften — die letzte Zeile sagt, was schiefging, die Rahmen darüber sagen, wo — wer also nur die letzte Zeile liest, kennt den Namen und verliert den Ort; und bei den „Wert fehlt“-Fehlern wie NoneType und KeyError liegt die Ursache fast immer in einem Rahmen über dem abgestürzten.
Eine Fehlermeldung lesen
- Von der ersten Zeile abwärts lesen. Weiter unten geht es um das Innere des Werkzeugs; die Ursache steht meist oben.
- Gibt es Datei und Zeilennummer, dort anfangen — nicht der oberste Stack-Frame, sondern die oberste Zeile, die eine eigene Datei nennt.
- Die Meldung wörtlich suchen, vorher aber eigene Pfade und Variablennamen entfernen; genau die verhindern den Treffer.
- Dieselbe Lage wird je Werkzeugversion anders formuliert. Passen die Treffer nicht, die Versionsnummer mit in die Suche.
- Vor dem Einfügen einer Lösung prüfen, was sie verwirft. Manches davon lässt sich nicht zurückholen.
Häufige Fragen
Q. Was bedeutet „error: externally-managed-environment“?
Dieses Python gehört dem Betriebssystem oder Homebrew, und pip weigert sich, dort hineinzuschreiben (PEP 668). Sie haben pip install auf den System-Interpreter angewendet; die Meldung fordert eine virtuelle Umgebung. --break-system-packages tut, was der Name sagt, und kann von apt verwaltete Dateien beschädigt zurücklassen — legen Sie stattdessen ein .venv an und installieren Sie darin.
Q. Wie behebe ich das?
python3 -m venv .venv && source .venv/bin/activate — vor dem Ausführen oben prüfen, was dieser Befehl verwirft.
Q. Welches Werkzeug gibt das aus?
pip 23+. Es gehört zu Python, und die Meldung hat 2 Wörter.