当尝试使用 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?
答案1
不幸的是,14.04 版附带了一个损坏的pyvenv
。根据此启动板线程该问题将在即将到来的 14.04-1 中得到解决
使用此方法您可以安装一个不带 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
答案2
原因:Ubuntu 14.04 和 Debian 都有一个损坏的pyvenv-3.4
工具。请参阅Ubuntu 错误 1290847和Debian 错误 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
我曾描述过这个错误我自己的要点。此代码中的 URL 来自官方 pip 安装说明。
答案3
这也应该有效:
sudo apt-get install python-virtualenv
virtualenv -p python3 myvenv
或者更好的是:
sudo apt-get install python3-pip
sudo pip3 install virtualenv
virtualenv myvenv
答案4
我解决这个问题的方法是运行
$ python -m ensurepip
这产生了一个以此行结尾的堆栈跟踪:
FileNotFoundError: [Errno 2] No such file or directory: '/usr/lib64/python3.4/ensurepip/_bundled/setuptools-20.10.1-py2.py3-none-any.whl'
所以我去了https://pypi.python.org/pypi/setuptools/20.10.1并抓住轮子并将其放入我的目录中(我必须用它创建mkdir -p /usr/lib64/python3.4/ensurepip/_bundled/
)
然后我再次跑步,python -m ensurepip
遇到了
No such file or directory: '/usr/lib64/python3.4/ensurepip/_bundled/pip-8.1.1-py2.py3-none-any.whl
所以我去了https://pypi.python.org/pypi/pip/8.1.1,抓住那轮并将其粘在目录中。
现在我可以用 创建虚拟环境python -m venv .venv
。成功!