Ubuntu – Python virtualenvwrapper problem running the initialization hooks

16.04bashpythonvirtualenvvirtualenvwrapper

On a fresh install of 16.04, I am trying to install virtualenvwrapper by following this great answer by Gerhard Burger.

after configuring the .bashrc, whenever opening the terminal displays

bash: /usr/local/bin/python2.7: No such file or directory
virtualenvwrapper.sh: There was a problem running the initialization hooks. 

If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenvwrapper has been installed for
VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python2.7 and that PATH is
set properly.

the script location is,

$ sudo find / -name virtualenvwrapper.sh
[sudo] password for john: 
/usr/local/bin/virtualenvwrapper.sh

contents of my .bashrc are,

export WORKON_HOME=/home/john/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
export PIP_VIRTUALENV_BASE=/home/john/.virtualenvs

here is my pip freeze

cffi==1.5.2
greenlet==0.4.9
pbr==1.10.0
readline==6.2.4.1
six==1.10.0
stevedore==1.15.0
virtualenv==15.0.2
virtualenv-clone==0.2.6
virtualenvwrapper==4.7.1

the python interpreter's location,

$ which python
/usr/bin/python

How do I make it work?

thank you.

Best Answer

I am using Ubuntu server 16.04, You should also export the python interpreter in which you've installed the the virtualenvwrapper

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=~/.virtualenvs
source /home/vagrant/.local/bin/virtualenvwrapper.sh

Make sure to replace all the paths above according to your own system. Your wrapper script might e.g. be located in /usr/local/bin/virtualenvwrapper.sh instead, or you might use a different interpreter or virtualenvs home, ...

Related Question