#7892: Python fails to build hashlib module on Solaris 8
------------------------+---------------------------------------------------
   Reporter:  drkirkby  |       Owner:  drkirkby  
       Type:  defect    |      Status:  new       
   Priority:  major     |   Milestone:  sage-4.3.1
  Component:  solaris   |    Keywords:            
Work_issues:            |      Author:            
   Upstream:  N/A       |    Reviewer:            
     Merged:            |  
------------------------+---------------------------------------------------
 Although Solaris 8 is not supported, I thought I'd try a build of Sage 4.3
 on a Sun Blade 1000 running Solaris 8 10/2001 - the first release of
 Solaris 8 I believe.

 This was useful, as it highlighted a failure in Python's spkg-install. The
 spkg-install exited with no useful error message - it did not give a clue
 where the failure was, due to incorrect usage of 'set -e'.

 However, after correcting the spkg-install issue (#7761), the reason for
 the failure become apparent - a failure to build the Python haslib module.
 This is exactly the same failure which caused myself and Jaap Spies a lot
 of grief - see #7761.

 It would appear that either the wrong version of OpenSSL or a mixture of
 OpenSSL versions can easily cause Python to fail to build the haslib
 module. Finding a suitable version can be tricky, and there is no obvious
 way to specify which version of OpenSSL python should use if there are
 more than one version present. In this case, I believe there was only one
 version, so I'm unsure why Python would not build haslib with it. Perhaps
 this version is too new for the version of Python in Solaris

 For this Solaris 8 build, I purposely used oldish versions of tools when I
 built from source, but used whatever I found first on Sunfreeware for the
 binaries, which tend to be a lot newer than 2001 when this version of
 Solaris was released. The basic build process was:

  * Install Solaris 8 Solaris 8 10/01 (an old i.e. October 2001 release)
  * Download wget 1.12, which needed OpenSSL. The version of OpenSSL
 installed was 0.9.8l, which is the latest release.
  * Download a binary of gcc 3.4.6 from Sunfreeware.com, as this version of
 Solaris 8 came with no gcc.
  * Download necessary libraries for gcc.
  * Install gcc 4.0.4 from source, as gcc 3.4.6 is too old to build Sage.
  * Download a binary of perl v5.8.8 from Sunfreeware, as the perl 5.005_03
 in Solaris 8 is too old to build Sage (or at least 'prereq' exits with a
 version this old. I doubt anyone has actually tested all versions to find
 the absolute minimum necessary).

 '''It would appear we need to address exactly the issue of OpenSSL with
 Solaris, as it is problematic.'''

 {{{
 changing mode of /export/home/drkirkby/sage-4.3/local/lib/python2.6/lib-
 dynload/_multiprocessing_failed.so to 755
 changing mode of /export/home/drkirkby/sage-4.3/local/lib/python2.6/lib-
 dynload/_ctypes.so to 755
 changing mode of /export/home/drkirkby/sage-4.3/local/lib/python2.6/lib-
 dynload/ to 755
 running install_scripts
 copying build/scripts-2.6/pydoc ->
 /export/home/drkirkby/sage-4.3/local/bin
 copying build/scripts-2.6/idle -> /export/home/drkirkby/sage-4.3/local/bin
 copying build/scripts-2.6/2to3 -> /export/home/drkirkby/sage-4.3/local/bin
 copying build/scripts-2.6/smtpd.py ->
 /export/home/drkirkby/sage-4.3/local/bin
 changing mode of /export/home/drkirkby/sage-4.3/local/bin/pydoc to 755
 changing mode of /export/home/drkirkby/sage-4.3/local/bin/idle to 755
 changing mode of /export/home/drkirkby/sage-4.3/local/bin/2to3 to 755
 changing mode of /export/home/drkirkby/sage-4.3/local/bin/smtpd.py to 755
 running install_egg_info
 Writing /export/home/drkirkby/sage-4.3/local/lib/python2.6/lib-
 dynload/Python-2.6.2-py2.6.egg-info
 if test -f /export/home/drkirkby/sage-4.3/local/bin/python -o -h
 /export/home/drkirkby/sage-4.3/local/bin/python; \
         then rm -f /export/home/drkirkby/sage-4.3/local/bin/python; \
         else true; \
         fi
 (cd /export/home/drkirkby/sage-4.3/local/bin; ln python2.6 python)
 rm -f /export/home/drkirkby/sage-4.3/local/bin/python-config
 (cd /export/home/drkirkby/sage-4.3/local/bin; ln -s python2.6-config
 python-config)
 ./install-sh -c -m 644 ./Misc/python.man \
 /export/home/drkirkby/sage-4.3/local/share/man/man1/python.1
 make[2]: Leaving directory
 `/export/home/drkirkby/sage-4.3/spkg/build/python-2.6.2.p5/src'
 Sleeping for three seconds before testing python
 Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/export/home/drkirkby/sage-4.3/local/lib/python2.6/hashlib.py",
 line 136, in <module>
     md5 = __get_builtin_constructor('md5')
   File "/export/home/drkirkby/sage-4.3/local/lib/python2.6/hashlib.py",
 line 63, in __get_builtin_constructor
     import _md5
 ImportError: No module named _md5
 hashlib module failed to import

 real    10m31.767s
 user    8m6.410s
 sys     1m51.870s
 sage: An error occurred while installing python-2.6.2.p5
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/7892>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB
-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.


Reply via email to