Trying to upgrade Python 2.7.0 to Python 2.7.3 using pip: SyntaxError; confused between python2 and python3?
I have a Python 2.7.0 installation in virtualenv in /local/gerrit/python2.7
. I would like to upgrade it to Python 2.7.3. I'm trying to use pip to do this, but somehow it gets confused between python2 and python3:
$ pip install --upgrade 'python>=2.7,<2.7.99'
Downloading/unpacking python>=2.7,<2.7.99 from http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2
Running setup.py egg_info for package python
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/local/gerrit/python2.7/build/python/setup.py", line 1804
exec(f.read(), globals(), fficonfig)
SyntaxError: unqualified exec is not allowed in function 'configure_ctypes' it contains a nested function with free variables
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/local/gerrit/python2.7/build/python/setup.py", line 1804
exec(f.read(), globals(), fficonfig)
SyntaxError: unqualified exec is not allowed in function 'configure_ctypes' it contains a nested function with free variables
----------------------------------------
Command python setup.py egg_info failed with error code 1 in /local/gerrit/python2.7/build/python
Storing complete log in /storage4/home/gerrit/.pip/pip.log
It looks like it /local/gerrit/python2.7/build/python/setup.py
has python3 syntax and something is messed up. Is my diagnosis correct? How can I clean it up so that I don't have to reinstall Python and all its libraries?
source to share
You will most likely need to use something like pythonz , which manages multiple python installations on the same machine.
Then when you use things like virtualenv you will want to point them to the binary you installed like this and you will have a working virtual disk with that particular copy of python
virtualenv -p /path/to/python
source to share