Robert Bradshaw wrote:
On Feb 11, 2010, at 6:56 PM, Dr. David Kirkby wrote:
Robert Bradshaw wrote:
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
I've attached a log
http://trac.sagemath.org/sage_trac/attachment/ticket/8152/install.log.gz
to ticket
http://trac.sagemath.org/sage_trac/ticket/8152
which clearly shows a failure on what is a fresh install of Solaris 10
03/3005.
Thanks for the log. Here's the relevant portion:
Failed to find the necessary bits to build these modules:
_bsddb _hashlib _ssl
_tkinter bsddb185 gdbm
linuxaudiodev ossaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the
module's name.
Failed to build these modules:
_bisect _bytesio _codecs_cn
_codecs_hk _codecs_iso2022 _codecs_jp
_codecs_kr _codecs_tw _collections
_csv _ctypes _ctypes_test
_curses _curses_panel _elementtree
_fileio _functools _heapq
_hotshot _json _locale
_lsprof _md5 _multibytecodec
_multiprocessing _random _sha
_sha256 _sha512 _socket
_sqlite3 _struct _testcapi
_weakref array audioop
binascii bz2 cmath
cPickle crypt cStringIO
datetime dbm dl
fcntl future_builtins grp
imageop itertools math
mmap nis operator
parser pyexpat readline
resource select spwd
strop sunaudiodev syslog
termios time unicodedata
zlib
This tells us that (1) it did not try to build ssl support and (2) your
CFLAGS and/or OPT environment variables are set in such a way that
extension classes can't be built.
-bash-3.00$ echo $OPT
-bash-3.00$ echo $CFLAGS
-bash-3.00$ echo $LDFLAGS
Try "import math" which will also
break in this install. Nothing to do with OpenSSL. IMHO, Python is
failing too gracefully here--make should be reporting an error.
Agreed. this time a lot of modules have not built, so something must be wrong,
but that has not always been the case. There have typically been around 6
modules which did not build, or did not install.
This can be remedied by setting LD_LIBRARY_PATH the directory
/usr/sfw/lib.
If I were a betting man, I'd be willing to bet good money this won't fix
your install after looking at your log.
This issue does not seems to be totally reprooducible, but I've now
seen this on several versions of Solaris, both on SPARC and x86 hardware.
I would guess that's because you're varying the wrong parameters.
> - Robert
>
I agree in this case, something went wrong, but on other occasions, I've seen
this problem without lots of modules failing. Here is one section of a previous
build failure on SPARC:
Failed to find the necessary bits to build these modules:
_bsddb _tkinter bsddb185
gdbm linuxaudiodev ossaudiodev
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 _hashlib
_ssl
One obvious thing I did not do in this case, which I've done on all previous
occasions, has been to apply all the Sun recommended patches. This time I
specifically chose to install the only patch I knew was certainly needed, which
was to fix a gcc issue with the Sun suplied version of gcc, which would have
prevented me building a later gcc. Let me rebuild this with the Sun recommended
patches installed. I suspect this is more likely to be the problem.
It's strange that both zlib and bzip2 modules failed to build, but both the zlib
and bzip2 packages in Sage built ok. Something fundamentally went wrong here,
but I know there has been other occasions when the number of modules failing has
been *considerably* less.
Dave
--
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