sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.32k stars 453 forks source link

Allow Sage to build on OS X 10.12 (Sierra) #21567

Closed jhpalmieri closed 7 years ago

jhpalmieri commented 7 years ago

Trying to build Sage from scratch on OS X 10.12 results in a broken Python:

    Failed to build these modules:
    _scproxy    

We've seen this before -- see #17174 and #17169.

CC: @mstreng

Component: build

Author: John Palmieri

Branch/Commit: 2d85bc9

Reviewer: François Bissey

Issue created by migration from https://trac.sagemath.org/ticket/21567

kiwifb commented 7 years ago
comment:51

I think we may be on the wrong track, remember #18254? I will play around with MACOSX_DEPLOYMENT_TARGET currently stuck on 10.9 as the maximum. Somehow something gone "boing" in my install, so make distclean before restarting gcc then takes some time...

kiwifb commented 7 years ago
comment:52

I think this is #18254 all over again except that setting MACOSX_DEPLOYMENT_TARGET to 10.9 (or 10.12) doesn't fix the problem. Unsetting failed me too.

kiwifb commented 7 years ago
comment:53

And because we are using rpath we need to set it at 10.5 minimum - not unset it. I think we are cornered into going clang. Any of the other people in brew, macports and al using gcc have suggestions? Couldn't find any on google.

vbraun commented 7 years ago
comment:54

The failure in matrix_integer_dense.pyx is also very common on OSX 10.11 right now (possibly related to openblas, not sure). Why not go with comment:23, its definitely an improvement over not building.

kiwifb commented 7 years ago
comment:55

Replying to @vbraun:

The failure in matrix_integer_dense.pyx is also very common on OSX 10.11 right now (possibly related to openblas, not sure). Why not go with comment:23, its definitely an improvement over not building.

matrix_integer_dense.pyx needs its own ticket. It wants to be compiled as both a c and a c++ file at the same time. module_list.py gives it -std=c99, linbox is pulled in its dependencies from somewhere and bring -std=gnu++11 and the cythonized file ends up in .cpp. Removing the -std=c99 from module_list.py and adding language =c++ doesn't make a difference. Something else puts back the std=c99 (multi_modular.pxd?). This is my current obstacle in porting to clang at #12426.

kiwifb commented 7 years ago
comment:56

I am otherwise OK to go with the branch rather than not building.

kiwifb commented 7 years ago

Author: John Palmieri

kiwifb commented 7 years ago

Reviewer: François Bissey

kiwifb commented 7 years ago
comment:58

Making it positive if you want to include it.

vbraun commented 7 years ago

Changed branch from u/jhpalmieri/clang to 2d85bc9