pyvenv-3.4返回非零退出状态1
我在使用Kubuntu 14.04,想用python3.4创建一个虚拟环境。之前我在其他文件夹里用python2.7成功创建过。但是当我尝试这样做时:
pyvenv-3.4 venv
我遇到了这个错误:
错误:命令 '['/home/fmr/projects/ave/venv/bin/python3.4', '-Im', 'ensurepip', '--upgrade', '--default-pip']' 返回了非零的退出状态 1
20 个回答
33
在Linux Mint 17上遇到同样的问题(其实它就是Ubuntu 14.04)。安装python3.4-venv
没有成功,所以我没有用pip创建虚拟环境,而是手动创建了一个虚拟环境,然后再手动安装了pip。
创建虚拟环境并激活它
python3 -m venv --without-pip foo source foo/bin/activate
下载最新版本的
setuptools
和pip
:wget https://pypi.python.org/packages/source/s/setuptools/setuptools-7.0.tar.gz#md5=6245d6752e2ef803c365f560f7f2f940 wget https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz#md5=01026f87978932060cc86c1dc527903e
解压并安装它们
tar xf setuptools-7.0.tar.gz tar xf pip-1.5.6.tar.gz cd setuptools-7.0 python setup.py install cd ../pip-1.5.6 python setup.py install
68
这里有一个不依赖操作系统的解决方案:
无论是 pyvenv
还是 python
命令,它们都有一个 --without-pip
选项,可以让你绕过这个问题;这样就不需要使用 setuptool
或者其他复杂的东西了。根据我下面的 inline comments
,这里是具体的做法,非常容易理解:
user$ pyvenv --without-pip ./pyvenv.d # Create virtual environment this way;
user$ python -m venv --without-pip ./pyvenv.d # --OR-- this newer way. Both work.
user$ source ./pyvenv.d/bin/activate # Now activate this new virtual environment.
(pyvenv.d) user$
# Within it, invoke this well-known script to manually install pip(1) into /pyvenv.d:
(pyvenv.d) user$ curl https://bootstrap.pypa.io/get-pip.py | python
(pyvenv.d) user$ deactivate # Next, reactivate this virtual environment,
user$ source ./pyvenv.d/bin/activate # which will now include the pip(1) command.
(pyvenv.d) user$
(pyvenv.d) user$ which pip # Verify that pip(1) is indeed present.
/path/to/pyvenv.d/bin/pip
(pyvenv.d) user$ pip install --upgrade pip # And finally, upgrade pip(1) itself;
(pyvenv.d) user$ # although it will likely be the
# latest version. And that's it!
希望这对你有帮助。(◠﹏◠)/
77
这是我解决这个错误的方法:
$ python3.6 -m venv venv
失败的命令: ['/venv/bin/python3.6', '-Im', 'ensurepip', '--upgrade', '--default-pip']
解决方案:
$ rm -rf venv
$ apt install python3.6-venv
$ python3.6 -m venv venv
279
你缺少了 Python 3.4 的虚拟环境库,只需要运行以下命令:
$ apt-get install python3.4-dev python3.4-venv
然后创建你的虚拟环境
python3.4 -m venv myVenv
81
我找到了解决办法,就是安装 python-virtualenv。
sudo apt-get install python-virtualenv
然后使用这个工具。
virtualenv --python=/usr/bin/python3.4 venv