python2.2.2 _socket not found

From: George Wyche (cjwyche_at_io.com)
Date: 06/30/03


Date: 29 Jun 2003 23:12:26 -0600

I'm running Solaris 2.5.1 (and staying there to support a
customer base). I downloaded python-2.2.2-sol25-sparc-local
which is a pkg and added it as root. I also did the required
gcc library libgcc-3.3-sol25-sol25-sparc-local pkg.

I have setenv LD_LIBRARY_PATH /usr/local/lib:/usr/local (and
tried the following with and without):

Unfortunately, when I ran webchecker (or linkchecker) I got
the error:
  File "webchecker.py", line 117, in ?
     import urllib
  File "/usr/local/python2.2/urllib.py", line 26, in ?
     import socket
  File "/usr/local/lib/python2.2/socket.py", line 41, in ?
     from _socket import *
ImportError: No module named _socket

The bit of help I found perusing python.org implied that I
would have to recompile python from sources and play games
with dynamic vs static libraries to avoid that failure.

 "The root of the issue is the distutils used for compiling
  determine the libs needed and add the -I / -L as needed.
  But no -R options are added. My problem came from the
  fact that I have OpenSSL deployed under /usr/local/ssl
  ... and the build process adds the -L to find ssl.so
  and crypt.so ... butthe resulting _socket.so does not
  have the runtime path to the OpenSSL libs, the test load
  of _socket.so fails, and it is removed from the build.
  The same hold for TK support and one or two others.
  [snip]
  My work-around for now is to add all the -L / -R
  directives I need to the CC environment variable before
  running the initial 'configure' script (because only the
  CC and LDSHARED variables are passed from Makefile to
  setup.py)."

Do I really have to do that? python source
distribution is HUGE! gcc3.2 is HUGE! I have a 56K
connection and it'll take all night and a day to download
that version. I thought the reason to go after the predone
pkg(s) was to avoid this kind of mess.

Have any of you faced this and found another solution?

George Wyche 1/2 of cjwyche@io.com