[Distutils] setuptools pain

Phillip J. Eby pje at telecommunity.com
Wed Dec 26 05:58:24 CET 2007

At 05:51 PM 12/23/2007 -0500, Barry Warsaw wrote:
>Hash: SHA1
>setuptools is causing me pain lately.  Something's clearly broken, but
>setuptools is not helping me understand what, or how to fix it.
>% /opt/local/bin/python2.5 setup.py develop -d staging
>running develop
>running egg_info
>creating mailman.egg-info
>writing requirements to mailman.egg-info/requires.txt
>writing mailman.egg-info/PKG-INFO
>writing top-level names to mailman.egg-info/top_level.txt
>writing dependency_links to mailman.egg-info/dependency_links.txt
>writing entry points to mailman.egg-info/entry_points.txt
>writing manifest file 'mailman.egg-info/SOURCES.txt'
>reading manifest template 'MANIFEST.in'
>writing manifest file 'mailman.egg-info/SOURCES.txt'
>running build_ext
>error: /opt/local/lib/python2.5/site-packages/site.py: No such file or

You have a broken setuptools installation in /opt, which is missing 
site.py.  I'm afraid that setuptools isn't designed to gracefully 
handle the situation where random files are simply missing from the 

I'm going to guess that it's missing because it was installed using 
an RPM or some other package put together by someone who had the 
hubris to assume that I would actually include files in setuptools 
that aren't *necessary* for its operation, and that it would 
therefore be "better" for them to remove it.  If this is the case, 
please educate them regarding the error of their ways -- it will be 
taken more seriously from an actual user bitten by it, than from me.

>% rm -rf mailman.egg-info
>% /usr/local/bin/python2.5 setup.py develop -d staging

I notice here you're using /usr instead of opt, and this worked, so 
it appears you have two setuptools installations: one working and one 
not.  Be sure to praise the originator of your working installation 
as much as you shame the culprit responsible for your broken one.  :)

More information about the Distutils-SIG mailing list