On Wed, Feb 1, 2012 at 04:46, Dima Pasechnik <dimp...@gmail.com> wrote:
>
>
> On Wednesday, February 1, 2012 5:01:41 AM UTC+8, R. Andrew Ohana wrote:
>>
>> On Mon, Jan 30, 2012 at 10:04, John H Palmieri <jhpalm...@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 <jhpa...@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-...@googlegroups.com
>>
>> > To unsubscribe from this group, send an email to
>> > sage-devel+...@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
>
>
> I wonder if this is clang from Xcode 4 (i.e. what their cc is set to), or
> some other clang?

clang --version
Apple clang version 3.0 (tags/Apple/clang-211.12) (based on LLVM 3.0svn)
Target: x86_64-apple-darwin11.2.0
Thread model: posix

cc --version
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc.
build 5658) (LLVM build 2336.1.00)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

So this is Xcode4's clang, and cc is pointing to Xcode's llvm-gcc (as
is gcc). Currently I'm working with clang in a gentoo prefix on
sage.math, and am finding a few more issues that don't show up on
lion.

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



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