Differences between revisions 39 and 42 (spanning 3 versions)
Revision 39 as of 2009-05-14 11:44:57
Size: 2217
Comment: Add Sage 4.0 page for Solaris
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 currently being done by Michael Abshoff. This page tracks the Solaris port of Sage. This page is primarily maintained by David Kirkby. 
Line 7: Line 7:
The goal of this port is to get Sage compiling and passing all doctests on x86/x86-64 as well as 32 and 64 bit Sparc on Solaris 10 and higher. The only compiler supported for this port will be gcc 4.3.2, but as the gcc port matures we will look into full support for the Sun Forte compiler toolchain. 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:
== Status ==
 
 * As of Sage 3.3.alpha4 the compile works on Solaris x86 with the custom toolchain. When using a binary clisp-2.47.spkg on Solaris/Sparc and the custom toolchain the compile also finishes. Note that several patches have to be applied for most of the doctests to pass. See the latest status page for more info below.
 * 64 bit support for Solaris 10 on x86-64 as well as Sparc is planned for Sage 3.4, but will take a couple releases to be fully merged.
=== SPARC status ===
As of the 4th August 2009, several older copies of Sage have been built. The most recent is:
Line 14: Line 12:
Please see also the open issues section at the bottom of the page for known problems.  * 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 16: Line 14:
 * [[solaris/sage-4.0|Sage 4.0 build issues and doctest failures]] (current)
 * [[solaris/sage-3.4.2|Sage 3.4.2 build issues and doctest failures]] (outdated)
 * [[solaris/sage-3.4.1|Sage 3.4.1 build issues and doctest failures]] (outdated)
 * [[solaris/sage-3.3|Sage 3.3 build issues and doctest failures]] (outdated)
 * [[solaris/sage-3.2.3|Sage 3.2.3 build issues and doctest failures]] (outdated)
 * [[solaris/sage-3.1.3|Sage 3.1.3 build issues and doctest failures]] (outdated)
 * [[solaris/sage-3.0.5|Sage 3.0.5 build issues and doctest failures]] (outdated)
 * [[solaris/sage-3.0.4-and-earlier|Sage 3.0.4 and earlier build issues and doctest failures]] (outdated)
=== Issues ===
Line 25: Line 16:
== Open Issues ==
 * clisp fails to compile on Sparc/Solaris up to clisp 2.47 with gcc 3.3.6 to 4.3.2. The switch to ecl will fix this.
 * Symmetrica detects internal inconsistency issues on Solaris. This is likely a bug in the interface code that just happens to cause trouble on Solaris only.
 * Sympow needs to have the FPU mode initialized properly on Solaris/x86. High optimization level for the compiler also break Sympow on Solaris/x86
 * 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.
Line 30: Line 18:
== ToDo ==  * 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.
Line 32: Line 20:
 * make doctests pass 100% :)
 * make building toolchain automatic
=== 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 ==