On Mon, Jan 30, 2012 at 10:04, John H Palmieri <jhpalmier...@gmail.com> wrote:
>
> On Tuesday, January 17, 2012 1:59:45 PM UTC-8, William wrote:
>>
>> On Tue, Jan 17, 2012 at 1:39 PM, William Stein <wst...@gmail.com> wrote:
>>
>> > On Mon, Jan 16, 2012 at 3:43 PM, William Stein <wst...@gmail.com> wrote:
>> >> On Mon, Jan 16, 2012 at 9:26 AM, John H Palmieri <jhpalm...@gmail.com>
>> >> wrote:
>> >>>
>> >>>
>> >>> On Monday, January 16, 2012 7:42:49 AM UTC-8, William wrote:
>> >>>>
>> >>>> Hi,
>> >>>>
>> >>>> A major blocker for Sage-5.0 is supporting OS X (version 10.7 -- the
>> >>>> version that has been out for months now).
>> >>>>
>> >>>> Fortunately, it is now "relatively easy" to build sage-5.0.beta1 on
>> >>>> OS
>> >>>> X 10.7 with XCode 4.x, and have it start up.
>> >>
>> >> After building Sage on OS X 10.7, "make test" did this:
>> >
>> > For the record, running tests with "sage -t devel/sage/sage" yields
>> > hundred(s) of failing files:
>> >
>> >   http://wstein.org/home/wstein/tmp/test-sage-5.0.beta1-osx10.7.txt
>> >
>> > It could be that most of these boil down to some code at the core of
>> > PARI (the bezout function) being miscompiled.
>> >
>> > There is a discussion about this from August 2011 here:
>> >
>> >   http://pari.math.u-bordeaux.fr/archives/pari-dev-1108/msg00000.html
>> >
>> > It unfortunately appears based on the mailing list -- and searching
>> > through the ** 5 months ** since then -- that nothing at all was done
>> > to try to fix the problem, even though I had setup access to 10.7 for
>> > the Pari developers.   Probably the main problem is that the machine I
>> > setup -- sqrt5.math.washington.edu -- is on the CS network, and for
>> > some reason it keeps getting kicked off.
>> >
>> > This really sucks.   Maybe I can rewrite their bezout to get around
>> > the problem.
>>
>> Another option is to turn of optimization (-O0) when building part of
>> PARI under XCode 4.x, since the problem is bad compiler optimization.
>>   I just tried, export SAGE_DEBUG="yes", then building PARI with
>> SAGE_CHECK="yes", and I get: "The PARI self-tests all passed".
>>
>> So something based on optimization flags is the workaround I'll pursue
>> for now.   Something that is slightly slower than optimal is way
>> better than infinitely slower.
>
>
> I've been trying to build Sage with OS X Lion over the past few days, and
> things are going pretty well: there are a few doctest failures, but I think
> most are numerical noise.  Most spkgs build just fine, but because of bugs
> in Apple's compiler, a few -- pari, gsl, symmetrica -- have problems unless
> we modify them.  So I propose the following modifications in the
> spkg-install scripts for those packages:
>
>  - check to see if running Lion, and if so
>  - check to see if /usr/bin/gcc-4.2 exists.  this might be available from an
> older installation of XCode, or it can be installed using the gcc package
> Georg posted a link to: http://r.research.att.com/tools/.  If it's there,
> set CC=gcc-4.2.
>  - otherwise, turn off optimization (compile with -O0) for those packages.
> This seems to avoid the bugs, although it will slow down those specific
> pieces of code.
>
> Opinions?
Do we know which files build incorrectly, we should only set the flag
for those (and not the whole library). Also, we should see if -O1
works too.
>
> We also seem to need to delete the file
> SAGE_ROOT/local/lib/python/config/libpython2.7.a.  Any reasons why doing
> this is a bad idea?  (See
> <http://trac.sagemath.org/sage_trac/ticket/11967>.)
>
> There are still a few remaining problems with OS X Lion, like self-tests for
> cvxopt, but maybe someone can figure out how to fix them.
>
> See <http://trac.sagemath.org/sage_trac/ticket/11881> for the trac
> metaticket about building Sage on Lion.
>
> --
> John
>
> --
> 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

I've started looking into the difficulties of getting sage to build
with clang (on lion), and have made some progress on the sage
libraries.

Using CC=clang, CXX=clang++, and SAGE_CHECK=yes for all spkgs except

eclib
givaro
libm4rie
gap
lcalc
linbox
matplotlib
polybori
pynac
libfplll
singular
ratpoints
sage

where I used gcc instead (all Xcode 4). Most of the spkgs not listed
here that don't just build only needed some flags set (the exceptions
being python, which needed a patch, and ecm, which will probably need
a patch to the asm).

I've built sage with roughly the same doctest failures as you get when
you turn off optimization for pari and symmetrica, although there are
likely some spkgs that aren't respecting CC and CXX. So far I've found
that flint, flintqs, ratpoints, f2c, and a small part of sage haven't
been, but thanfully all of them have been trivial fixes (except for
the last one, I haven't yet found where exactly it is calling gcc).

(Beyond the issue of fortran) I'm not sure if it will be possible to
build all of the sage libraries with clang. For instance, it currently
doesn't yet support nested functions, which I know at least ratpoints
uses.

Anyway, I just figured I'd share what I've found so far.

-- 
Andrew

-- 
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

Reply via email to