[Python-Dev] SSL support in _socket
Barry A. Warsaw
barry@zope.com
Wed, 13 Feb 2002 09:47:12 -0500
>>>>> "MAL" == M <mal@lemburg.com> writes:
MAL> I thought that Modules/Setup is deprecated and replaced by
MAL> the auto setup tests in setup.py ? In any case, setup.py will
MAL> simply remove _socket if it doesn't import correctly and so a
MAL> casual sys admin or user will lose big if his OpenSSL
MAL> installation happens to be out of sync with whatever we
MAL> provide in _socket.
This is a more general problem with the current setup.py stuff for the
standard library. It took me /ages/ to figure out why BerkeleyDB
support was broken in Python 2.2 -- not just broken, but non-existant!
"import bsddb" simply failed because the .so wasn't there. I couldn't
figure out why that was until I trolled through the build output and
realized that setup.py was deleting the .so because it got an import
error after building the .so. Then I had to figure out how to build
the .so and keep it around so I could then learn that it had link
problems and from there, I realized why BerkeleyDB support in Python
2.2 is /really/ busted (it tries to be too smart about finding its
libraries).
It shouldn't have been this difficult to debug. Surely there must be
some way to tell setup.py not to delete .so's it can't import so we
have a prayer of finding the real problems.
-Barry