Can';t使用Python3.2创建virtualenv。谁知道?Pip、setuptools还是Python 2.7?

Can';t使用Python3.2创建virtualenv。谁知道?Pip、setuptools还是Python 2.7?,pip,virtualenv,setuptools,virtualenvwrapper,python-3.2,Pip,Virtualenv,Setuptools,Virtualenvwrapper,Python 3.2,我无法使用VirtualEnvrapper正确安装基于Python 3.2的虚拟环境。我碰到了一堵神秘的墙,现在我正在寻找更多的选择来解决我的WHODUNNIT?困境 一些背景 我首先尝试使用Python2.7(系统的Python默认设置)中的PIP1.5.6安装VirtualEnvrapper。当我试图卸载/升级我的pip时,不知怎的我把它弄坏了。现在,如果我尝试: $ pip Traceback (most recent call last): File "/usr/local

我无法使用VirtualEnvrapper正确安装基于Python 3.2的虚拟环境。我碰到了一堵神秘的墙,现在我正在寻找更多的选择来解决我的WHODUNNIT?困境

一些背景

我首先尝试使用Python2.7(系统的Python默认设置)中的PIP1.5.6安装VirtualEnvrapper。当我试图卸载/升级我的pip时,不知怎的我把它弄坏了。现在,如果我尝试:

$ pip 
    Traceback (most recent call last):
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.28-py3.2.egg/pkg_resources.py", line 2816, in <module>
    working_set.require(__requires__)
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.28-py3.2.egg/pkg_resources.py", line 690, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.28-py3.2.egg/pkg_resources.py", line 592, in resolve
    raise VersionConflict(dist,req) # XXX put more info here
pkg_resources.VersionConflict: (pip 7.1.2 (/usr/local/lib/python3.2/dist-packages), Requirement.parse('pip==1.5.6'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.28-py3.2.egg/pkg_resources.py", line 2820, in <module>
    parse_requirements(__requires__), Environment()
  File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.28-py3.2.egg/pkg_resources.py", line 588, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: pip==1.5.6
因此,我继续安装VirtualNVRapper,没有问题:

$ sudo pip3.2 install virtualenvwrapper
这就是Python 3.2所在的位置

$ whereis python3.2.3 
whereis python3.2.3
python3.2: /usr/bin/python3.2 /etc/python3.2 /usr/lib/python3.2 /usr/bin/X11/python3.2 /usr/local/lib/python3.2 /usr/include/python3.2 /opt/Python-3.2/bin/python3.2 /usr/share/man/man1/python3.2.1.gz
这是我的virtualenv版本:

$ virtualenv --version
14.0.6
错误

在制作virtualenv之前,我修改了.bashrc

export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/admin/workspace
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
在找到它的来源(即source~/.bashrc)后,我无法启动virtualenv

$ mkvirtualenv --python=/usr/bin/python3.2 venv
Running virtualenv with interpreter /usr/bin/python3.2
New python executable in /home/admin/.virtualenvs/venv/bin/python3.2
Also creating executable in /home/admin/.virtualenvs/venv/bin/python
/usr/local/lib/python3.2/dist-packages/virtualenv-14.0.6-py3.2.egg/virtualenv_support/pip-8.0.2-py2.py3-none-any.whl/pip/_vendor/pkg_resources/__init__.py:87: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.
Traceback (most recent call last):
  File "/usr/local/lib/python3.2/dist-packages/virtualenv-14.0.6-py3.2.egg/virtualenv.py", line 2304, in <module>
    main()
  File "/usr/local/lib/python3.2/dist-packages/virtualenv-14.0.6-py3.2.egg/virtualenv.py", line 705, in main
    symlink=options.symlink)
  File "/usr/local/lib/python3.2/dist-packages/virtualenv-14.0.6-py3.2.egg/virtualenv.py", line 924, in create_environment
    download=download,
  File "/usr/local/lib/python3.2/dist-packages/virtualenv-14.0.6-py3.2.egg/virtualenv.py", line 843, in install_wheel
    cert_data = pkgutil.get_data("pip._vendor.requests", "cacert.pem")
  File "/usr/lib/python3.2/pkgutil.py", line 573, in get_data
    loader = get_loader(package)
  File "/usr/lib/python3.2/pkgutil.py", line 461, in get_loader
    return find_loader(fullname)
  File "/usr/lib/python3.2/pkgutil.py", line 471, in find_loader
    for importer in iter_importers(fullname):
  File "/usr/lib/python3.2/pkgutil.py", line 427, in iter_importers
    __import__(pkg)
  File "/usr/local/lib/python3.2/dist-packages/virtualenv-14.0.6-py3.2.egg/virtualenv_support/pip-8.0.2-py2.py3-none-any.whl/pip/__init__.py", line 15, in <module>
有趣的是,venv是在.virtualenvs中创建的

可能的原因

在网上的其他地方阅读(我发现只有一个人有类似的问题)可以使用以前版本的virtualenv解决(我尝试了,但没有成功),或者我使用了不正确的组合pip和/或VirtualEnvrapper。或者可能是我的Python 2.7在后台乱搞

更新:设置工具

或者设置工具呢。我在尝试PIP1.5.6时遇到了这个错误

 UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.
 warnings.warn(msg)
另一个更新:修复了原始pip

我使用以下方法修复了原始pip:

$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python get-pip.py
$ pip --version 
pip 8.0.3 from /usr/local/lib/python2.7/dist-packages (python 2.7)
更新:VirtualRapper不是

在我自己的“Whodunnit”传奇中,我会说VirtualRapper与此无关。在这里:

$ virtualenv -p /usr/bin/python3.2 ~/.virtualenvs/venv32
Running virtualenv with interpreter /usr/bin/python3.2
New python executable in /home/admin/.virtualenvs/venv32/bin/python3.2
Also creating executable in /home/admin/.virtualenvs/venv32/bin/python
/usr/local/lib/python2.7/dist-packages/virtualenv_support/pip-8.0.2-py2.py3-none-any.whl/pip/_vendor/pkg_resources/__init__.py:87: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.
但问题依然存在。我还能试什么


提前谢谢

如果要使用Python 3.2,必须使用pip<8和virtualenv<14。另见


为什么需要使用古老的Python 3.2?您能做的最好的事情是安装并使用远优于Python>=3.4。

谢谢,joeforker!我用Python 3.2编写了多个程序。我将尝试使用一个旧的pip安装旧的virtualenv版本,并在这里返回结果。使用旧的virtualenv安装旧的pip可能更容易,相反,virtualenv应该捆绑pip。好吧,使用pip 1.5.6和7.1.2安装virtualenv和VirtualEnvRapper给我带来了同样的问题。pip安装“虚拟世界!令人惊叹的。我不知道你能用超级皮普做到这一点!
$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python get-pip.py
$ pip --version 
pip 8.0.3 from /usr/local/lib/python2.7/dist-packages (python 2.7)
$ virtualenv -p /usr/bin/python3.2 ~/.virtualenvs/venv32
Running virtualenv with interpreter /usr/bin/python3.2
New python executable in /home/admin/.virtualenvs/venv32/bin/python3.2
Also creating executable in /home/admin/.virtualenvs/venv32/bin/python
/usr/local/lib/python2.7/dist-packages/virtualenv_support/pip-8.0.2-py2.py3-none-any.whl/pip/_vendor/pkg_resources/__init__.py:87: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.