On 5/29/07, didier deshommes <[EMAIL PROTECTED]> wrote: > (http://osdir.com/ml/mathematics.sage.general/2006-07/msg00011.html): > """ > 2. clisp-2.38/src/makemake.in sets BINARY_DISTRIB=1 for Solaris. This > causes an incorrect definition of uint64_to_I (and perhaps other > problems). Commenting out BINARY_DISTRIB=1 in makemake.in gave me > a working clisp on 32-bit x86 Solaris. I'm still having problems > with clisp on 32-bit and 64-bit SPARC Solaris. > """
This is actually the right solution: I forgot to make dist-clean. SAGE now builds on my machine! Here's a set of notes I took during the whole process: """ Use gcc-3.4 with Nexenta since gcc-4.0 is said to be buggy: sudo apt-get install gcc-3.4 g++-3.4 m4 bison flex libtool autoconf automake Make the OS find a gcc/g++ (nexenta bug): ln -s /usr/bin/gcc-3.4 /usr/bin/gcc ln -s /usr/bin/g++-3.4 /usr/bin/g++ Modify SHAREDFLAGS so that NTL passes the right one to accept -fPIC instead of -Kpic: SHAREDFLAGS=-fPIC Build Linbox without the --enable-optimization option (for now?). Modify Python for Matplotlib: http://www.scipy.org/Cookbook/Matplotlib/CompilingMatPlotLibOnSolaris10 Modify Singular's singuname.sh script. Modify Singular's Singluar/Makefile file: [sage-devel discussion] Modify quaddouble's include/qd/qd_inline (this is a known bug for \infty on solaris) Taken from mysql mailing list (http://lists.mysql.com/commits/24366): #if !defined(HAVE_ISINF) /* The configure check for "isinf with math.h" has failed */ #ifdef isinf #undef isinf #endif In sage/rings/real_rqdf.pyx, explicitly define NAN and INFINITY: cdef double NAN = 0.0/0.0 cdef double INFINITY = 1.0/0.0 Modify sage/rings/real_rqdf.pxd to include isfinite for solaris: cdef extern from "ieeefp.h": int finite(double) Modify clisp: (http://osdir.com/ml/mathematics.sage.general/2006-07/msg00011.html): """ 2. clisp-2.38/src/makemake.in sets BINARY_DISTRIB=1 for Solaris. This causes an incorrect definition of uint64_to_I (and perhaps other problems). Commenting out BINARY_DISTRIB=1 in makemake.in gave me a working clisp on 32-bit x86 Solaris. I'm still having problems with clisp on 32-bit and 64-bit SPARC Solaris. """ lcalc: conflict in include/getopt.h. . Commented out: extern int getopt (int __argc_, char *const *__argv_, const char *__shortopts); # else /* not __GNU_LIBRARY__ */ /* breaks on Solaris: extern int getopt (); */ # endif /* __GNU_LIBRARY__ */ sympow: there is no hard link on NexentaOS to /usr/bin/cc (nexenta bug). Create it like this: sudo ln -s /usr/bin/gcc /usr/bin/cc cddlib: Copied a new sage/allfaces.c that compiles on Nexenta. tachyon3d: added an if statement in spkg-install: if [ $UNAME = "SunOS" ]; then ne=`uname -v|grep -i nexenta` if [ $ne ]; then make solaris-pthreads-gcc finished fi make solaris-thr finished fi flintqs: Solaris doesn't know about u_int*_t. In F2matrix.h: /* Some platforms don't support u_int_32 */ typedef uint32_t u_int32_t; In lanczos.h: /* Some platforms don't support u_int_64 */ #ifndef u_int64_t #define u_int64_t unsigned long long int #endif """ I'll be building these packages on other platforms to see if anything breaks. didier --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---