问题
After upgrading to OSX Mavericks, I am getting this message in the terminal:
/usr/bin/python: No module named virtualenvwrapper
virtualenvwrapper.sh: There was a problem running the initialization hooks.
If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenv has been installed for
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python and that PATH is
set properly.
回答1:
Try reinstalling pip and then reinstalling virtualenvwrapper (I had to go through these steps after upgrading to Mavericks):
$ sudo easy_install pip
$ sudo pip install --upgrade virtualenvwrapper
回答2:
Re-arrange the export order so that the python path is placed before the virtualenv commands in your .bash_profile file.
# python path
export PATH=/usr/local/bin:$PATH
# needed for virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
回答3:
Try edit .bash_profile file
# Home brew
export PATH=/usr/local/bin:$PATH
# virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
回答4:
I wouldn't recommend running pip with sudo. This was my solution for the same problem (after upgrading to Mavericks).
In essence, uninstall any virtualenv and brewed Python you had before (use which <command> to check that you removed everything except the system Python in /usr/bin/python) and cleanly install them once again:
brew install python --with-brewed-openssl
# Open a new terminal tab now (to access /usr/local/bin/python)
pip install virtualenv
pip install virtualenvwrapper
回答5:
pip install --upgrade virtualenvwrapper will fix the issue but never used sudo pip this will change system-wide. If pip throws permission errors without sudo then you should fix those and then try only with pip install <--upgrade> $(package).
I rather suggest install homebrew and then install pip using brew install pip which will install latest stable version of pip for you.
Install homebrew and then run
brew doctor. If there are any warnings fix those(actually brew will tell you how to fixed those).You may need to remove system-wide python comes with Mac and use
brewto install required versions. Use this to remove system-wide python- Use
brew install pythonor/andbrew install python3to install required python version/s. Finaly run
pip install --upgrade virtualenvwrapperNow on never use
sudo piponly usepip.
回答6:
I had the same problem with MacOS High Sierra. I was able to fix it with these lines in my .bash_profile file:
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/Code
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python2
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
回答7:
Running these two commands helped me get rid of it (had done a software update on macOS High Sierra)
$ sudo easy_install pip
$ sudo pip install --upgrade virtualenvwrapper
回答8:
You just need to configure the path properly. Run the following commands in the terminal:
which python
Output -
/usr/bin/python
which virtualenvwrapper.sh
Output -
/usr/local/bin/virtualenvwrapper.sh
echo $VIRTUALENVWRAPPER_PYTHON/usr/local/bin/python
So as you can see that the variable $VIRTUALENVWRAPPER_PYTHON is pointing towards the wrong python path. So we need to reset the path of variable $VIRTUALENVWRAPPER_PYTHON.
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python
now run the following the command:
source /usr/local/bin/virtualenvwrapper.sh
来源:https://stackoverflow.com/questions/19549824/terminal-issue-with-virtualenvwrapper-after-mavericks-upgrade