Dato che ho appena fatto un tiro, cercherò di scrivere la risposta che avrei desiderato due ore fa. Questo è per le persone che non vogliono solo la soluzione copia e incolla
Primo: ti chiedi perché copiare e incollare i percorsi funziona per alcune persone mentre non funziona per altri? ** Il motivo principale per cui le soluzioni differiscono sono le diverse versioni di Python, 2.x o 3.x. Esistono in realtà versioni distinte di virtualenv e virtualenvwrapper che funzionano con python 2 o 3. Se sei su python 2, installa in questo modo:
sudo pip install virutalenv
sudo pip install virtualenvwrapper
Se hai intenzione di utilizzare python 3, installa le relative versioni di python 3
sudo pip3 install virtualenv
sudo pip3 install virtualenvwrapper
Hai installato con successo i pacchetti per la tua versione di python e sono tutti pronti, giusto? Bene, provalo. Digita workon
nel tuo terminale. Il tuo terminale non sarà in grado di trovare il comando ( workon
è un comando di virtualenvwrapper). Ovviamente non lo farà. Workon
è un eseguibile che sarà disponibile solo dopo aver caricato / originato il file virtualenvwrapper.sh
. Ma la guida all'installazione ufficiale ti ha coperto su questo, giusto ?. Basta aprire il tuo .bash_profile e inserire quanto segue, si dice nella documentazione:
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh
Soprattutto il comando source /usr/local/bin/virtualenvwrapper.sh
sembra utile poiché il comando sembra caricare / generare il file desiderato virtualenvwrapper.sh
che contiene tutti i comandi con cui si desidera lavorare come workon
e mkvirtualenv
. Ma sì, no. Quando si segue la guida ufficiale di installazione, si è molto probabile di ricevere l'errore dal post iniziale: mkvirtualenv: command not found
. Ancora nessun comando è stato trovato e sei ancora frustrato. Allora qual è il problema qui? Il problema è che virtualenvwrapper.sh non è dove lo stai cercando in questo momento. Breve promemoria ... stai cercando qui:
source /usr/local/bin/virtualenvwrapper.sh
Ma c'è un modo abbastanza semplice per trovare il file desiderato. Basta digitare
which virtualenvwrapper
al tuo terminale. Questo cercherà il tuo PATH per il file, poiché è molto probabile che si trovi in una cartella inclusa nel PATH del tuo sistema.
Se il tuo sistema è molto esotico, il file desiderato si nasconderà fuori da una cartella PATH. In tal caso puoi trovare il percorso virtalenvwrapper.sh
con il comando della shellfind / -name virtualenvwrapper.sh
Il risultato potrebbe essere qualcosa del genere: /Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh
Congratulazioni. You have found your missing file!
. Ora tutto ciò che devi fare è cambiare un comando nel tuo .bash_profile. Basta cambiare:
source "/usr/local/bin/virtualenvwrapper.sh"
per:
"/Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh"
Congratulazioni. Virtualenvwrapper ora funziona sul tuo sistema. Ma puoi fare ancora una cosa per migliorare la tua soluzione. Se hai trovato il file virtualenvwrapper.sh
con il comando which virtualenvwrapper.sh
sai che si trova all'interno di una cartella del PATH. Quindi, se scrivi solo il nome del file, il tuo file system presumerà che il file si trovi all'interno di una cartella PATH. Quindi non devi scrivere il percorso completo. Basta digitare:
source "virtualenvwrapper.sh"
Questo è tutto. Non sei più frustrato. Hai risolto il tuo problema. Fiduciosamente.
WORKON_HOME
su "~ / .virtualenvs" ( valore predefinito ) consente di impostare virtualenvs privati