I seem to have suddenly started encounter the error error: option --single-version-externally-managed not recognized
when pip install
ing varions packages (including PyObjC
and astropy
). 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 setup.py
? Or something else entirely?
Add
--egg
optionI use
pip
version 1.4.1I was having this problem. It turned out it was a problem with the file permissions on my pip cache.
If you see a message at the very beginning of your pip output like
you might have the same problem. You can resolve it by either ensuring that you have proper file permissions on your pip cache (something like
chown -R $(whoami) /home/ubuntu/.cache/pip
) or, if you're on a UNIX, you can set the pip cache location with theXDG_CACHE_HOME
env var to some folder you do own.I have this problem on my macbook also when I try to upgrade one python package. I check pip version in OS X, it's too old: 1.1. I use follow cmd to upgrade pip to 1.5.6
Then this error is fixed.
New Update:
Install the latest version of
setuptools
. If you still get the error, installwheel
as well.Original Answer / More Details:
--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.
https://pypi.python.org/pypi/distribute
Edit: At this point, distribute has been merged into the main
setuptools
project. Just install the latest version ofsetuptools
. 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.Try upgrading setuptools like this:
pip install --upgrade setuptools
Installing
wheel
resolved this issue with recentpip
(I used 8.1.2):