Peter Jeremy wrote:
Why is Gnu tar needed? I realise that the Solaris tar is broken
but I've seen no problems with bsdtar? Maybe the tar test needs
to be a functionality test, rather than a version test.
I'm not so convinced the Sun tar is broken. Look for some comments by Joerg
Schilly about the GNU tar implementation. This
http://ftp.gnu.org/old-gnu/Manuals/tar-1.12/html_node/tar_117.html
suggests the default format of GNU tar will change anyway.
Does the BSD tar support the 'z' option for compressing files - since you need
that currently for sage-bdist, though that would be easy to re-write.
I don't know if there are other bits in Sage that rely on gnu-specific options.
But certainly sage-bdist requires GNU-specific (i.e. non-POSIX) options.
On 2010-Jan-22 17:01:50 +0000, "Dr. David Kirkby" <david.kir...@onetel.net>
wrote:
1) I get problems builing two python modules, and don't have the bits to build
several others. (Ignore hashlib+ ssl, as I have fixed that
-----------------------------------------------------------------
Failed to find the necessary bits to build these modules (ignore the hashlib and
_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:
_curses _curses_panel
---------------------------------------------------------------
On FreeBSD, I get:
Failed to find the necessary bits to build these modules:
_tkinter bsddb185 dl
imageop linuxaudiodev spwd
sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
Failed to build these modules:
nis
(The nis failure is presumably because I don't have NIS installed).
I would assume so. I doubt you need NIS in Sage!
Does it matter that any of these modules are missing?
No idea. A definitive answer would be good. Some of your failures are common to
what I get on Solaris, though both have their own unique failures.
2) Singular.
----------------------------------------------------------------
make[4]: Entering directory
`/export/home/drkirkby/sage-4.2/spkg/build/singular-3-1-0-4-20090818.p1/src/factory'
WARNING: You need to rerun autoconf. I am proceeding, for now.
I also found it necessary to install autoconf - one of my patches
explicitly patches the .ac file for singular because the supplied
configure script is too broken to correct directly. What is the
policy here? Should autoconf be run before the spkg is created so
that autoconf isn't needed at build time?
There should be no need to include autoconf. You make the configure files using
it, but that is it. In the event singular is written in such a way it needs
autoconf at compile time, then it is seriously against the norm, and not how
autoconf is intended to be used.
The other current prerequisite is a full C99 libm (including the long
double and complex functions).
In which case, these should be checked for.
But anything earlier than Solaris 10 needs SAGE_PORT set anyway. I've built
earlier versions of Sage on the very first release of Solaris 10 on SPARC.
The current 'prereq' should stop the build on Solaris 10 in most circumstances
where there is
I can think of - like the wrong make, gcc too old.
This is my current sticking point on
FreeBSD (and will probably affect building on older Solaris). One
workaround would be to embed glibc - but that seems overkill (and
the glibc implementation of some of the complex functions leaves much
to be desired).
Much of glibc is GPL3 too. I know there was something I wanted for HP-UX, and
that was GPL3.
Actually, I can imagine this being more and more of a problem over time, as
people creating new code today are more likely to go with GPL3, simply because
it's the latest version. Type in GPL into Google, and the number one link is
http://www.gnu.org/licenses/gpl.html
which is GPL 3.
There are also still a few areas where Sage assumes /bin/sh is bash -
these all need to be rooted out. Scripts either need to assume that
/bin/sh is Bourne shell (note that /bin/sh on Solaris is pre-POSIX) or
invoke the shell as bash. (A partial workaround is to have
$SAGE_ROOT/local/bin/sh as a symlink to bash).
I thought nearly everything now used
#!/usr/bin/env bash.
I'm not aware of anything that assumes /bin/sh is bash - if there is, then I
agree it should be removed. Just replace with the above. I've checked that
method on Solaris, AIX and HP-UX and it works on all of them.
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