2013-08-04 95 views
0

我有一个py2.7项目,我想在py3.2下测试。为此,我想使用virtualenv。我想创建一个内部运行3.2版的环境:python3.2 + virtualenv - env创建失败

virtualenv 3.2 -p /usr/bin/python3.2 

但它失败。我的默认python版本是2.7(ubuntu默认设置)。这里是virtualenv --version 1.10。错误输出是:

Running virtualenv with interpreter /usr/bin/python3.2 
New python executable in 3.2/bin/python3.2 
Also creating executable in 3.2/bin/python 
Installing Setuptools...................................................................................................................................................................................................................................done. 
Installing Pip.............. 
    Complete output from command /home/tomasz/Develop...on/3.2/bin/python3.2 setup.py install --single-version-externally-managed --record record: 
    Traceback (most recent call last): 
    File "setup.py", line 5, in <module> 
    from setuptools import setup, find_packages 
    File "/usr/lib/python2.7/dist-packages/setuptools/__init__.py", line 2, in <module> 
    from setuptools.extension import Extension, Library 
    File "/usr/lib/python2.7/dist-packages/setuptools/extension.py", line 2, in <module> 
    from setuptools.dist import _get_unpatched 
    File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 103 
    except ValueError, e: 
        ^
SyntaxError: invalid syntax 
---------------------------------------- 
...Installing Pip...done. 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 2308, in <module> 
    main() 
    File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 821, in main 
    symlink=options.symlink) 
    File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 963, in create_environment 
    install_sdist('Pip', 'pip-*.tar.gz', py_executable, search_dirs) 
    File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 932, in install_sdist 
    filter_stdout=filter_install_output) 
    File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 899, in call_subprocess 
    % (cmd_desc, proc.returncode)) 
OSError: Command /home/tomasz/Develop...on/3.2/bin/python3.2 setup.py install --single-version-externally-managed --record record failed with error code 1 

我不知道到底是什么语法错误 - 在它从何而来......我知道有2间在try ... catch语句的语法的变化。 x和3.x,但应该virtualenv抛出语法错误?

如果有人指出我有问题或者我的机器上有安装问题,我将不胜感激。

+0

http://regebro.wordpress.com/2011/02/02/newbie-hint-on-installing-python-and-its-modules-and- packages/ –

回答

2

要创建Python 3.2虚拟环境,您应该使用为Python 3.2安装的virtualenv。你的情况,这将是:

/usr/bin/virtualenv-3.2 
1

您必须使用Python 3版本的virtualenv;您使用的版本是将Python 2工具安装到Python 3虚拟环境中,并且这些工具不兼容。

+0

我在这里安装了我当前的virtualenv:'sudo pip install virtualenv'。我想它使用了'2.7'的默认py版本。我怎样才能安装不同的virtualenv版本?我在安装/文档中找不到它 – ducin

+0

使用'python3-pip'软件包;它有一个'pip-3.2'命令。 'sudo pip-3.2 install virtualenv'应该这样做。 –

0
virtualenv --python=/usr/bin/python3.2 --no-site-packages ENV