[Distutils] pip/easy_install mercurial in virtualenv on Python 3.3

Christian Tismer tismer at stackless.com
Mon Feb 25 13:27:07 CET 2013

Some further analysis of the problem:

Mercurial is (and should be) installed system-wide.

The 'hg' command (at least my homebrew install) uses the normal shebang

"#!/usr/bin/env python"

When using virtualenv and python2.7, this works fine.

When using virtualenv or venv and python3.3, then the following happens:

- The 'python' command gets redirected to python3.
- Then the system mercurial is run with the wrong interpreter.

That finally made me try to install mercurial using pip, and that caused the
question from below.

But actually, the "bad thing" IMHO is the naming clash introduced by the
symlinks that v(irtual)env is setting:

Why does it ignore the otherwise clear distinction between python and 
python3 ?

And who is responsible to make things "right":
Should virtualenv avoid this naming problem,
or should the mercurial installer become more carefully specify its 

In any case, this is pretty annoying, and hard to explain to users.
What fixing do you recommend as a workaround?

cheers - chris

On 25.02.13 02:33, Christian Tismer wrote:
> With Python 3.3:
> in a virtualenv/venv, when trying
> $ pip install mercurial
> or, after trying several options,
> $ easy_install mercurial
> I get the complaint
> error: Setup script exited with setup.py with python3 needs --c2to3 
> (experimental)
> But when I try to do this accordingly, I get in either case again:
> $ easy_install mercurial --c2to3
> error: Setup script exited with setup.py with python3 needs --c2to3 
> (experimental)
> Any clue where to put this option?
> cheers -- chris

Christian Tismer             :^)   <mailto:tismer at stackless.com>
Software Consulting          :     Have a break! Take a ride on Python's
Karl-Liebknecht-Str. 121     :    *Starship* http://starship.python.net/
14482 Potsdam                :     PGP key -> http://pgp.uni-mainz.de
phone +49 173 24 18 776  fax +49 (30) 700143-0023
PGP 0x57F3BF04       9064 F4E1 D754 C2FF 1619  305B C09C 5A3B 57F3 BF04
       whom do you want to sponsor today?   http://www.stackless.com/

More information about the Distutils-SIG mailing list