On Feb 6, 2010, at 5:58 PM, Robert Bradshaw wrote:
On Feb 6, 2010, at 2:09 PM, Dr. David Kirkby wrote:
Sorry, I realised the problem - we are discussing two different
issues.
On Solaris 10 (SPARC), i.e. t2, this has never been an issue, as
python has built ok. There is no need to do anything fancy - it
just works. It's probably the case the OpenSSL libraries are *not*
found, but the haslib module builds, which is enough to pass the
test in spkg-install.
That's good, as its an indication that OpenSSL is not a Sage
dependancy after all. (Well, it's not a dependancy for building and
starting at least.)
On OpenSolaris, python does not build with haslib, without
installing OpenSSL. Ask William - he was the one that told me that
installing OpenSSL would solve the problem on OpenSolaris.
I think it would be advantageous to add /usr/sfw/lib to that search
path, as at least on Solaris 10, it will give some extra
functionality. On OpenSolaris it will not, as the OpenSSL libraries
are not installed by default. When they get installed, they install
in /usr/local/ssl, and python finds them.
If you're referring to #7761, I'm fairly confident that the errors
here had nothing to do with OpenSSL--none of the extension modules
were being compiled correctly because -m64 was not being propagated
to distutils. (It just so happens that we tried to import hashlib,
but importing zlib or something else would have failed as well). The
gnutls bugs at #7387 seemed to boil down to the same issue (non-64
bit binaries). Whether it was the lack of OpenSSL that was really
causing problems still seems uncertain, I hope they're not, but who
knows.
To see what would happen, I went and grabbed the OpenSolaris image at http://virtualbox.wordpress.com/images/opensolaris/
, installed gcc, moved the openssl directory out of /usr/include,
and built Python 2.6.4 from source. The result:
op...@opensolaris:~/Python-2.6.4$ ./configure; make
[...]
Failed to find the necessary bits to build these modules:
_bsddb _hashlib _ssl
bsddb185 gdbm linuxaudiodev
ossaudiodev readline
To find the necessary bits, look in setup.py in detect_modules() for
the module's name.
Failed to build these modules:
_curses _curses_panel _tkinter
sunaudiodev
running build_scripts
op...@opensolaris:~/Python-2.6.4$ ./python
Python 2.6.4 (r264:75706, Feb 6 2010, 19:26:31)
[GCC 3.4.3 (csl-sol210-3_4-20050802)] on sunos5
Type "help", "copyright", "credits" or "license" for more information.
>>> import _ssl
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named _ssl
>>> import hashlib
>>> m = hashlib.md5()
>>> m.update("foo")
>>> m.hexdigest()
'acbd18db4cc2f85cedef654fccc4a4d8'
So it wasn't able to find or build the OpenSSL pieces, but hashlib
works just fine. Thus it looks like OpenSSL is not a prerequisite for
Python, hence Sage (as far as I know), after all (which is very good).
The spkg hashlib (note the second 'h' you seem have a sticky
keyboard...) module test probably pre-dates Python 2.6.4--this should
succeed on any successful Python build, and if it doesn't it's
probably indicative of a distuitls failure which will bite us all over
later on.
- Robert
--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org