def check_call(*popenargs, **kwargs):
"""Run command with arguments. Wait for command to complete. If
the exit code was zero then return, otherwise raise
CalledProcessError. The CalledProcessError object will have the
return code in the returncode attribute.
The arguments are the same as for the Popen constructor. Example:
retcode = call(*popenargs, **kwargs)
cmd = kwargs.get("args")
if cmd is None:
cmd = popenargs
raise CalledProcessError(retcode, cmd)
E CalledProcessError: Command '['virtualenv', '-p', '/usr/bin/python2.7', '/var/tmp/portage/dev-python/cffi-0.4.2/temp/ffi-0/infrastructure-cpy']' returned non-zero exit status 2
------------------------------- Captured stdout --------------------------------
Already using interpreter /usr/bin/python2.7
The PYTHONDONTWRITEBYTECODE environment variable is not compatible with setuptools. Either use --distribute or unset PYTHONDONTWRITEBYTECODE.
test_zintegration is indeed testing that cffi works with virtualenv (sorry if it wasn't clear; will be fixed).
The issue you have now is reported by virtualenv running setuptools, and not being happy with the PYTHONDONTWRITEBYTECODE environment variable being set. This is an issue of setuptools; we can't do anything about it (and I didn't know about it in the first place). The error message should explain explicitly enough what the problem is and how to fix it, it seems to me.
Theoretically, yes, but it seems like the message about using --distribute is referring to the virtualenv call. Since we're going to require PYTHONDONTWRITEBYTECODE (since my setup is part of our packaging process). So, what you could do is pass --distribute to virtualenv. Are you willing to make that change?