Problema no virtualenvwrapper do Python executando os ganchos de inicialização

10

Em uma nova instalação do 16.04, estou tentando instalar o virtualenvwrapper seguindo esta ótima resposta de Gerhard Burger.

depois de configurar o .bashrc, sempre que abrir o terminal é exibido

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.

a localização do script é

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

conteúdo do meu .bashrcsão,

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

aqui está o meu 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

a localização do intérprete python,

$ which python
/usr/bin/python

Como faço para funcionar?

obrigado.

Tudo é muito
fonte
Bem-vindo ao AskUbuntu. Você pode querer incluir um link para o referido resposta que se referem a :)
Videonauth
@Videonauth Thanks. Acabei de remover o link durante a limpeza. desculpa.
Todo o código é
@ John Meu /usr/local/binrealmente não contém python2.7, e eu suspeito que o seu também não. which python2.7diz /usr/bin/python2.7, mas ainda não descobri como dizer virtualenvwrapperpara procurar em /usr/binvez de /usr/local/bin.
edwinksl
@John Baseado em virtualenvwrapper.readthedocs.io/en/latest/… , você pode adicionar export VIRTUALENVWRAPPER_PYTHON=/usr/bin/pythonao seu .bashrcantes source /usr/local/bin/virtualenvwrapper.sh?
edwinksl
@edwinksl tentou, mas não corrige.
Todo o código é

Respostas:

17

Estou usando o servidor Ubuntu 16.04. Você também deve exportar o interpretador python no qual instalou o virtualenvwrapper

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

desde que eu tenho várias instalações python.

Desonesto
fonte
3

apenas comente

source /usr/local/bin/virtualenvwrapper.sh

linha em

~ / .bashrc

arquivo .... funcionou para mim.

Ajay Kumar Bolloju
fonte
1

Você provavelmente precisará atualizar sua variável de ambiente PYTHONPATH. No seu .bashrc, antes de todas as variáveis ​​virtualenvwrapper, adicione a seguinte linha:

export PYTHONPATH=${PYTHONPATH}:/usr/bin
Michael
fonte
0

Na .bashrcmudança

VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3

e depois fazê-lo funcionar no shell atual,

source /usr/local/bin/virtualenvwrapper.sh 

Depois, altere o virtualenvwrapper.sh

VIRTUALENVWRAPPER_PYTHON="$(command \which python)"

para isso

VIRTUALENVWRAPPER_PYTHON="$(command \which python3)"
Droopy
fonte