Differences between revisions 1 and 42 (spanning 41 versions)
Revision 1 as of 2007-11-28 11:31:24
Size: 1264
Comment: initial version
Revision 42 as of 2009-08-04 15:08:20
Size: 1401
Editor: DavidKirkby
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
This page tracks the Solaris port of Sage. This page tracks the Solaris port of Sage. This page is primarily maintained by David Kirkby.
Line 5: Line 5:
mabshoff is currently working on a 32 bit build on Solaris 9/Sparc. It should run on Solaris 10/Sparc. == Goal ==
Line 7: Line 7:
== History of efforts == The goals of this port are to get Sage compiling and passing all doctests on OpenSolaris (x86/x86-64) as well as 32 and 64 bit SPARC on Solaris 10 and higher.
Line 9: Line 9:
 * 2.8.14:
  * new bug in matrix code that provides a special class for multivariate polynomials as entries causes segfaults all over the map.
  * int_fast64_t needs to be 4 bytes large, otherwise Sage throws an exception at startup. This needs fixing and actually causes doctest failures with the modp code
  * libfplll miscompiles, fix clear, but needs to be merged upstream
  * FLINT miscompiles, fixed upstream
  * lcalc miscompiles, fixes need to be integrated
  * clisp compiles, but segfaults. Solution: use 2.39 binary until issue is solved
  * cvxopt doesn't work (complex.h missing)
  * 2-3 patches are needed to sage.spkg - easy fixes, need to be merged upstream
 * 2.8.3:
  * worked reasonably well after workarounds, about 10-12 doctest failures
  * work arounds needed: clisp, lcalc
  * missing/failed spkgs: cvxopt
 * pre 2.8:
  * various people (David Kirby) worked on this, but I am not sure if Sage ever passed 100% of doctests
=== SPARC status ===
As of the 4th August 2009, several older copies of Sage have been built. The most recent is:
Line 25: Line 12:
== ToDo ==  * Sage 4.1.1.rc0 (a developer release) was built on a Sun Blade 2000 running Solaris 10 update 7. For this, gcc/g++/gfortran versions were 4.4.0. The GNU compilers were built to use the Sun linker (/usr/ccs/bin/ld) and the Sun assembler (/usr/ccs/bin/as).
Line 27: Line 14:
 * make doctests pass 100%
 * open track tickets for all known issue
=== Issues ===

 * ECL which is an implementation of the Common Lisp language is used inside Sage for Maxima. The version of ECL in Sage will not build on Solaris SPARC. Neither will version 9.4.1 of ECL, which is the latest as I write. However, the ECL developers have fixed the issue in the latest CVS. A new release of ECL is expected before the 9th August. This will then be integrated into Sage. Before this, an experimental package of ecl is available, which solves this issue.

 * Maxima will not build. This is because of a bug in Maxima, which has been noticed for the first time in 35 years. It was only noticed when the newest ECL detected the error.

=== Building Sage on Solaris SPARC ==

The Solaris Port of Sage

This page tracks the Solaris port of Sage. This page is primarily maintained by David Kirkby.

Goal

The goals of this port are to get Sage compiling and passing all doctests on OpenSolaris (x86/x86-64) as well as 32 and 64 bit SPARC on Solaris 10 and higher.

SPARC status

As of the 4th August 2009, several older copies of Sage have been built. The most recent is:

  • Sage 4.1.1.rc0 (a developer release) was built on a Sun Blade 2000 running Solaris 10 update 7. For this, gcc/g++/gfortran versions were 4.4.0. The GNU compilers were built to use the Sun linker (/usr/ccs/bin/ld) and the Sun assembler (/usr/ccs/bin/as).

Issues

  • ECL which is an implementation of the Common Lisp language is used inside Sage for Maxima. The version of ECL in Sage will not build on Solaris SPARC. Neither will version 9.4.1 of ECL, which is the latest as I write. However, the ECL developers have fixed the issue in the latest CVS. A new release of ECL is expected before the 9th August. This will then be integrated into Sage. Before this, an experimental package of ecl is available, which solves this issue.
  • Maxima will not build. This is because of a bug in Maxima, which has been noticed for the first time in 35 years. It was only noticed when the newest ECL detected the error.

=== Building Sage on Solaris SPARC ==