当前位置: 首页>>技术教程>>正文


pyvenv-3.4错误:返回非零退出状态1

, ,

问题描述

尝试使用14.04附带的pyvenv-3.4创建虚拟环境时,会抛出错误:

Error: Command '['/some/directories/bin/python3.4', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1

如何在Ubuntu 14.04中使用pyvenv-3.4?

最佳解决方案

不幸的是,14.04装有破损的pyvenv。根据this launchpad thread,问题将在即将到来的14.04-1中得到解决

使用this method可以安装不带pip的Pyvenv环境,然后在事后手动安装pip。

pyvenv-3.4 --without-pip myvenv
source ./myvenv/bin/activate
wget https://pypi.python.org/packages/source/s/setuptools/setuptools-3.4.4.tar.gz
tar -vzxf setuptools-3.4.4.tar.gz
cd setuptools-3.4.4
python setup.py install
cd ..
wget https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz
tar -vzxf pip-1.5.6.tar.gz
cd pip-1.5.6
python setup.py install
cd ..
deactivate
source ./myvenv/bin/activate

次佳解决方案

原因:Ubuntu 14.04和Debian都有一个破碎的pyvenv-3.4工具。请参阅Ubuntu bug 1290847Debian bug 732703

解决方案/解决方法(比其他答案更短):

pyvenv-3.4 --without-pip venvdir
source venvdir/bin/activate
curl https://bootstrap.pypa.io/get-pip.py | python
deactivate
source venvdir/bin/activate

我在my own Gist中描述了这个错误。此代码中的URL来自official pip installation instructions

第三种解决方案

这也应该有效:

sudo apt-get install python-virtualenv
virtualenv -p python3 myvenv

或者更好的是:

sudo apt-get install python3-pip
sudo pip3 install virtualenv
virtualenv myvenv

第四种方案

你错过了python 3.4的venv lib,只需运行:

$ apt-get安装python3.4-dev python3.4-venv

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1273.html,未经允许,请勿转载。