我在ubuntu 14.04下使用virtualenv,virtualenvwrapper运行python 2.7.6。
现在我从源代码安装了python 2.7.9。新的python解释器现在位于/usr/local/bin
下,但似乎旧的解释器也位于/usr/bin
下。
如果我运行python shell它会显示python2.7.9。但如果我使用mkvirtualenv venv
,我会收到以下消息。
venv / bin / python中的新python可执行文件 安装setuptools,pip ...完成。
Blockquote / usr / local / bin / python:没有名为virtualenvwrapper的模块
old .bashrc
(使用python 2.7.6解释器进行工作配置)
# virtualenv-wrappper path
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
新.bashrc
(失败配置)
# virtualenv-wrappper path
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
使用新的.baschrc
我在source .bashrc
中输入并获得以下输出。
/ usr / local / bin / python:没有名为virtualenvwrapper的模块 virtualenvwrapper.sh:运行初始化挂钩时出现问题。
如果Python无法导入模块virtualenvwrapper.hook_loader, 检查是否已安装virtualenvwrapper VIRTUALENVWRAPPER_PYTHON = / usr / local / bin / python和PATH是 设置得当。
我也试过which -a python
:
输出:
/usr/local/bin/python
/usr/bin/python
我想在virtualenv和virtualenvwrapper中使用python 2.7.9。那么我必须做些什么才能让它运转起来?
答案 0 :(得分:35)
如果您修改了virtualenvwrapper
以指向python3
,就像我一样:
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
然后确保使用以下代码安装virtualenv
和virtualenvwrapper
sudo /usr/local/bin/pip3 install virtualenv virtualenvwrapper
答案 1 :(得分:20)
您需要在python 2.7.9下安装它们,方法是指定正确使用的pip版本的路径
/usr/local/bin/pip install virtualenv virtualenvwrapper
否则,当运行pip install
时,系统将使用默认值(即位于/usr/bin/pip
的那个)
答案 2 :(得分:0)
source /usr/local/bin/virtualenvwrapper_lazy.sh
使用pyenv:
export PYENV_ROOT="${HOME}/.pyenv"
if [ -d "${PYENV_ROOT}" ]; then
export PATH="${PYENV_ROOT}/bin:${PATH}"
eval "$(pyenv init -)"
fi
export PATH
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_SCRIPT=/usr/local/bin/virtualenvwrapper.sh
#important
source /usr/local/bin/virtualenvwrapper_lazy.sh