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

Reply via email to