it-swarm.com.de

Fehler "virtualenv: Befehl nicht gefunden", aber Installationsort befindet sich in PYTHONPATH

Dies hat mich in den letzten 2 Tagen verrückt gemacht. Ich habe virtualenv mit pip install virtualenv..__ auf meinem Macbook installiert. Wenn ich jedoch versuche, eine neue virtualenv mit virtualenv venv zu erstellen, erhalte ich die Fehlermeldung "virtualenv: command not found" ".

Ich habe pip show virtualenv verwendet und der Ort der Installation ist "Location: /usr/local/lib/python2.7/site-packages", aber ich kann nicht herausfinden, wo sich die ausführbare Datei befindet. Ich habe Dutzende anderer ähnlich aussehender Posts ausprobiert, aber diese Lösungen funktionieren nicht für mich.

Irgendwelche Ideen, was hier schief gehen könnte?

15
Pravesh Jain

Der einzige praktikable Ansatz, den ich herausfinden konnte (mit Hilfe von @Gator_Python war python -m virtualenv venv). Dies erstellt die virtuelle Umgebung und funktioniert wie erwartet.

Ich habe benutzerdefinierten Python installiert und deshalb funktioniert der Standardansatz für mich nicht.

31
Pravesh Jain

Wie in den Kommentaren erwähnt, haben Sie das Virtualenv-Modul ordnungsgemäß in der erwarteten Umgebung installiert, da Sie mit python -m venv Virtualenvs erstellen können. 

Die Tatsache, dass virtualenv kein erkannter Befehl ist, ist ein Ergebnis davon, dass virtualenv.py nicht in Ihrem Systempfad enthalten ist und/oder nicht ausführbar ist. Die Ursache könnte veraltete Distutils oder Setuptools sein.

Sie sollten versuchen, die virtualenv.py-Datei zu finden, um sicherzustellen, dass sie ausführbar ist (chmod +x) und dass sich ihr Speicherort in Ihrem Systempfad befindet. Auf meinem System befindet sich virtualenv.py im Ordner ../Pythonx.x/Scripts, dies kann jedoch für Sie anders sein.

4
sytech

Auf MacOS Mojave
Zuerst prüfen Sie, ob sich Python im Pfad befindet.
python --version
Die zweite Check-Pip ist installiert.
pip --version
Wenn es nicht installiert ist.
brew install pip
Dritte Installation von Virtualenv
Sudo -H pip install virtualenv 

2

Könnte es sein, dass Sie den Anaconda Package Manager verwenden? Wenn ja, dann hat es ein eigenes virtuelles Umgebungssystem, das Sie wie folgt einrichten:

conda create --name venv
1
Bill

Ich habe versucht, virtualenv an einem zufälligen Ort zu haben und hatte das gleiche Problem auf einem UBUNTU-Computer, als ich versuchte, mein 'venv' auszuführen. Was mein Problem löste, war:

$ virtualenv -p python3 venv

Anstatt $ activate zu verwenden, versuchen Sie auch: - $ source activate Wenn Sie sich das Aktivierungsskript ansehen (oder $ cat activate) finden Sie das gleiche im Kommentar.

0
Amit Prajapati

Es ist mir gelungen, manuell einen Link zu Speicherort/virtualenv.py in/usr/local/bin zu erstellen, ihn virtualenv zu nennen und das Attribut + x in der Datei hinzuzufügen

➜  ~ pip show virtualenv
Name: virtualenv
Version: 16.6.0
Summary: Virtual Python Environment builder
Home-page: https://virtualenv.pypa.io/
Author: Ian Bicking
Author-email: [email protected]
License: MIT
Location: /home/prsadev/.local/lib/python2.7/site-packages
Requires: 


~ chmod +x /home/prsadev/.local/lib/python2.7/site-packages/virtualenv.py 
~ Sudo ln -sf /home/prsadev/.local/lib/python2.7/site-packages/virtualenv.py /usr/local/bin/virtualenv
0
Damien Ferey

Ich hatte das gleiche Problem (obwohl auf Ubuntu), eine einfache Lösung ist, anstatt pip install virtualenv zu tun, Sie setzen dem Kommentar mit "Sudo" voraus. 

Eine kleine Inspektion zeigt den Grund für dieses Update:  enter image description here

pip install virtualenv versucht, eine ausführbare Datei unter /usr/local/bin abzulegen, damit sie von der Befehlszeile aus aufgerufen werden kann. Dies ist jedoch fehlgeschlagen, da nur root über Schreibberechtigung für dieses Verzeichnis verfügt

eine alternative ist pip install --user virtualenv, hier sind einige weitere lesungen 1 , 2

0
watashiSHUN