keflavich keflavich - 1 year ago 165
Python Question

What does "error: option --single-version-externally-managed not recognized" indicate?

I seem to have suddenly started encounter the error

error: option --single-version-externally-managed not recognized
pip install
ing varions packages (including
). I've never seen this error before, but it's now also showing up on travis-ci builds for which nothing has changed.

Does this error indicate an out of date distribute? Or some incorrectly specified option in
? Or something else entirely?

Answer Source

--single-version-externally-managed is an option used for Python packages instructing the setuptools module to create a Python package which can be easily managed by the host's package manager if needed, like Yum or Apt.

If you're seeing this message, you may have an old version of setuptools or Python. Try using Distribute, which is a newer version of setuptools and is backwards compatible. These packages may expect that you have it already.

Edit: At this point, distribute has been merged into the main setuptools project. Just install the latest version of setuptools. As @wynemo indicated, you may wish to use the --egg option instead, as it's more appropriate for those doing manual installations where you're not intending to create a system package for distribution.