Consider not upgrading to Xcode 9.0

370 views
Skip to first unread message

John H Palmieri

unread,
Sep 19, 2017, 7:50:32 PM9/19/17
to sage-devel
I just upgraded an OS X box to Xcode 9.0, and now Sage doesn't build:

- with a fresh Sage 8.1.beta5 tarball, gcc doesn't build:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1398:2: error: no member named 'fancy_abort' in namespace 'std::__1'; did you mean simply 'fancy_abort'?
        _VSTD::abort();
        ^~~~~~~

I'll open a ticket and post the full gcc log.

- instead using trac 12426 (compile with clang instead of gcc), eclib doesn't build:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/cmath:572:12: error: call to function 'isnan' that is neither visible in the template definition nor found by argument-dependent lookup
    return isnan(__lcpp_x);

....

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/cmath:592:12: error: call to function 'isinf' that is neither visible in the template definition nor found by argument-dependent lookup
    return isinf(__lcpp_x);

--
John

Dima Pasechnik

unread,
Sep 20, 2017, 6:08:13 AM9/20/17
to sage-devel
The eclib does not look like a big problem, some rather standard C++ template issue to be tweaked...

John H Palmieri

unread,
Sep 20, 2017, 12:05:39 PM9/20/17
to sage-devel
I put the log for that failure at #12426, and then François created an upstream ticket at

   https://github.com/JohnCremona/eclib/issues/28

in case you want to take a look.

François Bissey

unread,
Sep 20, 2017, 3:10:16 PM9/20/17
to sage-...@googlegroups.com
We in fact have a patch on github for a similar problem that was spotted
before. It proved effective in this instance. So I will proceed with trying
to build the rest of sage.

François
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To post to this group, send email to sage-...@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

François Bissey

unread,
Sep 20, 2017, 5:56:59 PM9/20/17
to sage-...@googlegroups.com
So I have a build of sage 8.1.beta5 on OS X with Xcode 9 using

* #12426 - building with clang - you need autotools installed or generate configure
somewhere that does and copy it in place.

* an external fortran compiler, given the problems with gcc it may
very well be that gfortran won’t build either - I need to further check that.

* an updated eclib https://github.com/JohnCremona/eclib/archive/v20170815.tar.gz
probably not necessary but defaulting to C++11 make logs much nicer since
it cuts down on the warnings. Beware this is not a sdist tarball.

* the patch at https://github.com/JohnCremona/eclib/issues/19#issuecomment-314952542
this is absolutely needed.

François

John H Palmieri

unread,
Sep 20, 2017, 6:08:05 PM9/20/17
to sage-devel
I successfully built with the current version (not the updated one) of eclib plus the patch you mentioned. I will also try to see if gfortran builds.

John H Palmieri

unread,
Sep 20, 2017, 6:44:50 PM9/20/17
to sage-devel
Trying to build gfortran yields the same error as reported at https://trac.sagemath.org/ticket/23898.

  John

Dima Pasechnik

unread,
Sep 20, 2017, 7:15:20 PM9/20/17
to sage-devel
I wonder if anyone tried lately using Intel's Fortran on OSX, I understand that with a university affiliation one can get it for free.

François Bissey

unread,
Sep 20, 2017, 7:17:26 PM9/20/17
to sage-...@googlegroups.com
Trying non gfortran fortran compiler is on my ToDo list. Not necessarily
intel though. You can get community PG compilers for free as well.
Not tried pgcc yet though.

François

François Bissey

unread,
Sep 20, 2017, 8:13:03 PM9/20/17
to sage-...@googlegroups.com
gfortran 7.2.0 builds out of the box. Don’t know about full blown gcc.

François
Reply all
Reply to author
Forward
0 new messages