Why is Python easy_install not working on my Mac?

PythonMacosEasy Install

Python Problem Overview


I have a Mac running Python 2.6. When I try to use easy_install I get this message:

/usr/bin/easy_install-2.6:7: UserWarning: Module pkg_resources was already imported from /System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.pyc, but /Library/Python/2.6/site-packages is being added to sys.path
  from pkg_resources import load_entry_point
/usr/bin/easy_install-2.6:7: UserWarning: Module site was already imported from /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site.pyc, but /Library/Python/2.6/site-packages is being added to sys.path
  from pkg_resources import load_entry_point
Traceback (most recent call last):
  File "/usr/bin/easy_install-2.6", line 10, in <module>
    load_entry_point('setuptools==0.6c9', 'console_scripts', 'easy_install')()
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py", line 271, in load_entry_point
    return False
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py", line 2173, in load_entry_point
    deps = []
ImportError: Entry point ('console_scripts', 'easy_install') not found

I am very confused by this and I want to know how I can fix this. Previously I didn't get this message, then after installing pip and uninstalling it, easy_install no longer works. I was wondering how I could fix this, or restore the default Python or easy_install setting on Mac.

Python Solutions


Solution 1 - Python

  1. Check your /usr/bin and /usr/local/bin for easy_install installations and remove any old script:

     sudo rm -f /usr/bin/easy_install*
     sudo rm -f /usr/local/bin/easy_install*
    
  2. Download and run distribute:

     curl -O https://svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.py
    
     sudo python distribute_setup.py
     sudo rm distribute_setup.py
    
  3. Try again, and enjoy. E.g.:

     sudo easy_install pip
    

Solution 2 - Python

I suspect the easiest way you can get easy_install working again is to install distribute, which is an improved version of distutils that bundles it's own version of easy_install. Installation is simple:

curl -O http://python-distribute.org/distribute_setup.py
/usr/bin/python2.6 distribute_setup.py

Solution 3 - Python

I had the same problem just after installing the new Operating System (Lion OSX). After install python and execute it

sudo easy_install ipython
ipython

I got the following error:

Traceback (most recent call last):
  File "/usr/local/bin/ipython", line 8, in <module>
    load_entry_point('ipython==0.10.2', 'console_scripts', 'ipython')()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 318, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2220, in load_entry_point
    raise ImportError("Entry point %r not found" % ((group,name),))
ImportError: Entry point ('console_scripts', 'ipython') not found

Then I realize it was a permission problem. If I execute the ipython script as sudo it worked.

sudo ipython

So I changed the ownership from root to my user () of the folder /Library/Python/2.7/site-packages/

sudo chown -R <your_user>:wheel /Library/Python/2.7/site-packages/

Use change ownership only if you don't have several accounts that uses python.

I hope it work for you.

Best

Solution 4 - Python

Your setuptools installation is broken. The easy_install-2.6 script in your /usr/bin directory, is only a wrapper that loads the actual easy_install module in your Python installation, and the latter is missing. Presumably uninstalling pip either broke the pointer to it (usually in the form of a .pth file in your site-packages directory) or removed the whole package but didn't remove the /usr/bin/easy_install-2.6 wrapper script.

Your best bet is to re-install setuptools from scratch again, by following the instructions on the setuptools PyPI page.

Solution 5 - Python

I had the same problem, I suspect caused by my installation of Homebrew which apparently installs its own version of easy_install blindly and screws up whatever you're currently running (enough times for homebrew to recognize it as a problem). I found my solution here https://stackoverflow.com/questions/5585473/upgraded-python-on-snowleopard-using-homebrew-now-pip-and-easy-install-dont-wor

While I'm actually on Lion, it still fixed my problem. You just download ez_setup.py from http://pypi.python.org/pypi/ez_setup - run ez_setup.py through terminal and you're off to the races.

Solution 6 - Python

I had a similar error message after following similar steps. I suspect it's because I tried to install the distribute module, and it tried to install a new version of setuptools which didn't quite work because it failed to correctly override the Mac OS X supplied setuptools. But that's only a suspicion.

I fixed my problem by doing the following. I found that the directory /System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python had 4 files with .OLD in the name. When I did a compare with similarly named files without the .OLD from when things worked (via Time Machine) I found that they were the same except for the name. So I did the following renames:

> setuptools.OLD.1305936263.57 -> > setuptools
> setuptools-0.6c9-py2.6.egg-info.OLD.1305936263.57 -> setuptools-0.6c9-py2.6.egg-info
pkg_resources.py.OLD.1305936263.57 > -> pkg_resources
site.py.OLD.1305936263.59 -> site.py

I had to use the command line and sudo mv because the files are owned by root. For example: sudo mv setuptools.OLD.1305936263.57 setuptools. You'll have to enter your password.

The other thing I did was clean the /Library/Python/2.6/site-packages directory. I used Time Machine to set it back to its pre-messed up state. If you don't have Time Machine, then you should be able to recover if you delete any files or folders beginning with distribute, easy-install, pip, pkg_resources, setuptools and site.

If that doesn't do the trick, uninstall any modules you can from that directory. For example use pip uninstall if you installed modules with pip. The reason to do this is that installation can copy files into usr/local/bin and other places that pip will remove for you.

Next it's time to remove any remaining modules. Rename the folder (in case there's something you want later) and make a new empty one.

Reinstall the modules you want and with a little luck you're back in business...

Solution 7 - Python

Martijn Pieter's answer is correct.

  1. Go to http://pypi.python.org/pypi/setuptools#downloads
  2. Download setuptools-0.6c11-py2.7.egg
  3. From your downloads directory run: sudo ./setuptools-0.6c11-py2.7.egg

Done :-)

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionEtanView Question on Stackoverflow
Solution 1 - PythonmimoraleaView Answer on Stackoverflow
Solution 2 - PythonzeekayView Answer on Stackoverflow
Solution 3 - PythonDaniel Pérez RadaView Answer on Stackoverflow
Solution 4 - PythonMartijn PietersView Answer on Stackoverflow
Solution 5 - PythonJon LitwackView Answer on Stackoverflow
Solution 6 - PythonStephen McDonaldView Answer on Stackoverflow
Solution 7 - PythonJaik DeanView Answer on Stackoverflow