Hi sage-devel, currently, there are several issues. I've got a bit spare time right now to work on them, but can't do that alone. Help, and helpful comments, are appreciated.
Some technicalities: Mac OS X runs on PowerPC and Intel CPUs (iPhone OS runs also on ARM, but that does not matter for us for the time being), and on those CPUs either in 32bit mode or/and 64bit mode. In principle, there is the possibility of "universal" binaries, but for the Sage distribution, we did not achieve this yet. So in terms of Sage binary distributions, there are four possible combinations of CPU type and bit length, and one and the same binary distribution is built for only one of these four combinations. But fixing the combination of CPU type and bitlength sometimes is not enough. E.g., there are Macs with (32bit) PowerPC G5 CPUs and Macs with (32bit) PowerPC G4 CPUs, and Sage binary distributions built on the former won't run on the latter. We don't have much experience with Intel CoreDuo vs. Core2Duo vs. i5 vs. i7 yet, but fun might await us there, too. Then, there is Mac OS X 10.4, as well as 10.5, and 10.6. Still reading this post? Good. :-) Let me try to summarize the current state of affairs for Sage w.r.t. these combinations, especially Sage binary distributions. A) Sage is supported under Mac OS X 10.4 only for 32bit-versions (not 64-bit), on CPU architectures PowerPC G4, PowerPC G5, and Intel. (Note: 64-bit support under Mac OS X 10.4 is existent, but hardly usable.). B) Sage is supported under Mac OS X 10.5 only for 32bit-versions (not 64-bit), on CPU architectures PowerPC G5, and Intel. (Notes: OS X 10.5 does not work on all Macs with PowerPC G4 CPUs. 64-bit support under Mac OS X 10.5 still seems not to be satisfactory enough). C) Sage is supported under Mac OS X 10.6 only for 64bit-versions (not 32-bit) and only on Intel CPUs. (Notes: OS X 10.6 does not run on PowerPC CPUs at all, Apple simply does not support that. 64-bit is the default bitlength for OS X 10.6. However, on certain Macs with CoreDuo CPUs, which seem to be "32bit only", there is at least one unresolved recent user report of building Sage currently being broken --- it seems the Sage 4.4 MPIR spkg won't build in this 32bit/10.6 setting.) D) Sage binary distributions for Mac OS X are in general "upwards compatible", but almost always not "downwards compatible". I.e. a Sage binary distribution built on OS X 10.4 will work on OS X 10.5, one built on a PowerPC G4 CPU will work on a PowerPC G5 CPU, a 32-bit version will work on a 64-bit OS, but in each of these cases not the other way around. (Note: There have been user reports in the past that the PowerPC G4 version works on their Macs with a PowerPC G3 CPU, but to my knowledge, that is the only case of a kind of "downwards compatibility". AFAIK, Sage binary distributions built on a 32-bit OS run on a 64-bit OS, but e.g. sage-clone might be broken, as well as sage-update --- there is at least one recent user report hinting at this, but I don't know for sure.) E) Currently, the Sage download page for Mac OS X binaries is divided into "intel" and "powerpc". Under "intel", there are usually two bdists: one for "32bit-10.4-i386", and one for "64bit-10.6-i386". Especially, for MacIntel OS X 10.5, as of late there is no regular genuine sage bdist (but the 10.4 one can be used under OS X 10.5 without problems, AFAIK). Under "powerpc", there are usually also two bdists: one for "32bit-10.4-PowerPC_G4", and one for "32bit-10.5- PowerMacintosh" (the latter is a "G5 CPU" one, and probably should be named "...PowerPC_G5" instead). F) Information on this is scattered around in certain Readme's, and not always complete (or even correct --- e.g. with respect to OS X 10.6 on PowerPC). Now the calls for votes: 1.) Shall we "set in stone" the above A) through D)? (This would imply adjusting the documentation and certain Readme's, see F.) 2.) Having done this (or even not), shall we deliver the Mac OS X binary distributions in one and the same directory, i.e. discard the distinction (see E above) between "intel" and "powerpc" binary directories? (This would imply that we should add some mechanism(s) in the Sage binaries to detect whether they "want to" run on the architecture/CPU/bitlength/OS version/environment they are started on.) Cheers, Georg -- 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