#12751: Sage fails to build with GCC-4.7.0
---------------------------------------------------------------------+------
       Reporter:  mariah                                             |         
Owner:  GeorgSWeber 
           Type:  defect                                             |        
Status:  needs_review
       Priority:  critical                                           |     
Milestone:  sage-5.0.1  
      Component:  build                                              |    
Resolution:              
       Keywords:  GCC 4.7.0 C++11 -fpermissive compiler bugs sd40.5  |   Work 
issues:              
Report Upstream:  N/A                                                |     
Reviewers:              
        Authors:  Jeroen Demeyer                                     |     
Merged in:              
   Dependencies:                                                     |      
Stopgaps:              
---------------------------------------------------------------------+------
Description changed by jdemeyer:

Old description:

> Sage 5.0.beta10 fails to build using GCC 4.7.0 on Skynet/eno and other
> Linux systems, for different reasons.
>
>  * GFan: #12760
>  * Givaro: #12761
>  * !LinBox: #12762
>  * !PolyBoRi: #12750, #12655
>  * MPIR on ia64 (Itanium): #12765 (GCC bug) -- #11616 also provides an
> MPIR 2.'''4.0'''.p3 spkg working around this.
>  * MPFR on ia64 (Itanium): #12837 (same GCC bug) -- Note that MPFR is
> also a prerequisite for building the GCC spkg.
>  * GMP-ECM on ia64 (Itanium): Fixed by #12830 (same GCC bug)
>  * zn_poly on ia64 (Itanium): Fixed by #12433 (same GCC bug)
>  * FLINT, NTL and PARI (as well as the Sage library) all fail to build on
> ia64 due to the same bug,
>  * R fails to build on ia64 during byte-compiling; seems to be a
> different issue, but same work-around works.  It also fails with `-O3`
> during byte-compiling on Solaris SPARC and Linux x86_64; on the former
> `-O2` works, on the latter somewhat surprisingly `-O3 -flto`.  (Cf.
> comments below.)
>  * Two files (`compat` and `linear`) of PARI's test suite fail due to
> segfaults when compiling with `-O3`/`-O2`/`-O1`, at least on Linux x86
> and x86_64.
>  * zlib on Solaris: #12800
>  * eclib on Solaris (See comments below; this is a Solaris header issue,
> fixed by a new spkg at #10993.)
>  * FLINTQS on Solaris: #12855 (Also a subtle Solaris header issue.)
>
> 1. '''gcc-4.7.0 spkg''' for testing purposes:
> [http://boxen.math.washington.edu/home/jdemeyer/spkg/gcc-4.7.0.spkg]
> 1. '''gcc-4.7.1.svn spkg''' for testing purposes:
> [http://boxen.math.washington.edu/home/jdemeyer/spkg/gcc-4.7.1.svn.spkg]
> 1. '''gcc-4.8.0.trunk spkg''' for testing purposes:
> [http://boxen.math.washington.edu/home/jdemeyer/spkg/gcc-4.8.0.trunk.spkg]
>
> ----
>
> The ia64 bug is fixed in gcc-4.7.1.svn, so we should apply the work-
> around only on GCC-4.7.0 and only for packages which are prequisites of
> GCC (since we don't plan to support Sage on ia64 with GCC-4.7.0, there is
> no point in work-arounds for ''some'' packages):
>
> === mpir-2.4.0.p6 (Jeroen Demeyer, 28 May 2012) ===
>  * Trac #12751: Apply the ia64 workaround for gcc-4.7.0 *only* on
>    gcc-4.7.0 and not on other gcc-4.7.x versions.
>
> === mpfr-3.1.0.p2 (Jeroen Demeyer, 28 May 2012) ===
>  * Trac #12751: Apply the ia64 workaround for gcc-4.7.0 *only* on
>    gcc-4.7.0 and not on other gcc-4.7.x versions.
>  * Remove pointless check for gmp.h.
>  * Rename MPFR_EXTRA_OPTS to MPFR_CONFIGURE for consistency with MPIR.
>
> === zn_poly-0.9.p9 (Jeroen Demeyer, 28 May 2012) ===
>  * Trac #12751: remove the gcc-4.7.0 workaround for ia64 since this bug
>    has been fixed in gcc-4.7.1 and we will not support building Sage
>    with gcc-4.7.0 on Itanium.
>  * Don't override user-set CFLAGS and CXXFLAGS.
>
> === ecm-6.3.p8 (Jeroen Demeyer, 28 May 2012) ===
>  * Trac #12751: remove the gcc-4.7.0 workaround for ia64 since this bug
>    has been fixed in gcc-4.7.1 and we will not support building Sage
>    with gcc-4.7.0 on Itanium.
>  * Remove unused variable SAGE_CONF_OPTS.
>  * Rename ECM_EXTRA_OPTS to ECM_CONFIGURE for consistency with MPIR.
>  * Don't override user-set CFLAGS.
>
> ----
>
> '''Apply''':
>  * [[attachment:12751_allow_gcc_4_7.patch]] to `SAGE_ROOT`
>  * mpir:
> [http://boxen.math.washington.edu/home/jdemeyer/spkg/mpir-2.4.0.p6.spkg]
>  * mpfr:
> [http://boxen.math.washington.edu/home/jdemeyer/spkg/mpfr-3.1.0.p2.spkg]
> (also various misc changes)
>  * ecm:
> [http://boxen.math.washington.edu/home/jdemeyer/spkg/ecm-6.3.p8.spkg]
> (also various misc changes)
>  * zn_poly:
> [http://boxen.math.washington.edu/home/jdemeyer/spkg/zn_poly-0.9.p9.spkg]
> (also fixes user-supplied `CFLAGS` and `CXXFLAGS` being overridden)

New description:

 Sage 5.0.beta10 fails to build using GCC 4.7.0 on Skynet/eno and other
 Linux systems, for different reasons.

  * GFan: #12760
  * Givaro: #12761
  * !LinBox: #12762
  * !PolyBoRi: #12750, #12655
  * MPIR on ia64 (Itanium): #12765 (GCC bug) -- #11616 also provides an
 MPIR 2.'''4.0'''.p3 spkg working around this.
  * MPFR on ia64 (Itanium): #12837 (same GCC bug) -- Note that MPFR is also
 a prerequisite for building the GCC spkg.
  * GMP-ECM on ia64 (Itanium): Fixed by #12830 (same GCC bug)
  * zn_poly on ia64 (Itanium): Fixed by #12433 (same GCC bug)
  * FLINT, NTL and PARI (as well as the Sage library) all fail to build on
 ia64 due to the same bug,
  * R fails to build on ia64 during byte-compiling; seems to be a different
 issue, but same work-around works.  It also fails with `-O3` during byte-
 compiling on Solaris SPARC and Linux x86_64; on the former `-O2` works, on
 the latter somewhat surprisingly `-O3 -flto`.  (Cf. comments below.)
  * Two files (`compat` and `linear`) of PARI's test suite fail due to
 segfaults when compiling with `-O3`/`-O2`/`-O1`, at least on Linux x86 and
 x86_64.
  * zlib on Solaris: #12800
  * eclib on Solaris (See comments below; this is a Solaris header issue,
 fixed by a new spkg at #10993.)
  * FLINTQS on Solaris: #12855 (Also a subtle Solaris header issue.)
  * Support GCC version "4.7": #13118.

 1. '''gcc-4.7.0 spkg''' for testing purposes:
 [http://boxen.math.washington.edu/home/jdemeyer/spkg/gcc-4.7.0.spkg]
 1. '''gcc-4.7.1.svn spkg''' for testing purposes:
 [http://boxen.math.washington.edu/home/jdemeyer/spkg/gcc-4.7.1.svn.spkg]
 1. '''gcc-4.8.0.trunk spkg''' for testing purposes:
 [http://boxen.math.washington.edu/home/jdemeyer/spkg/gcc-4.8.0.trunk.spkg]

 ----

 The ia64 bug is fixed in gcc-4.7.1.svn, so we should apply the work-around
 only on GCC-4.7.0 and only for packages which are prequisites of GCC
 (since we don't plan to support Sage on ia64 with GCC-4.7.0, there is no
 point in work-arounds for ''some'' packages):

 === mpir-2.4.0.p6 (Jeroen Demeyer, 28 May 2012) ===
  * Trac #12751: Apply the ia64 workaround for gcc-4.7.0 *only* on
    gcc-4.7.0 and not on other gcc-4.7.x versions.

 === mpfr-3.1.0.p2 (Jeroen Demeyer, 28 May 2012) ===
  * Trac #12751: Apply the ia64 workaround for gcc-4.7.0 *only* on
    gcc-4.7.0 and not on other gcc-4.7.x versions.
  * Remove pointless check for gmp.h.
  * Rename MPFR_EXTRA_OPTS to MPFR_CONFIGURE for consistency with MPIR.

 === zn_poly-0.9.p9 (Jeroen Demeyer, 28 May 2012) ===
  * Trac #12751: remove the gcc-4.7.0 workaround for ia64 since this bug
    has been fixed in gcc-4.7.1 and we will not support building Sage
    with gcc-4.7.0 on Itanium.
  * Don't override user-set CFLAGS and CXXFLAGS.

 === ecm-6.3.p8 (Jeroen Demeyer, 28 May 2012) ===
  * Trac #12751: remove the gcc-4.7.0 workaround for ia64 since this bug
    has been fixed in gcc-4.7.1 and we will not support building Sage
    with gcc-4.7.0 on Itanium.
  * Remove unused variable SAGE_CONF_OPTS.
  * Rename ECM_EXTRA_OPTS to ECM_CONFIGURE for consistency with MPIR.
  * Don't override user-set CFLAGS.

 ----

 '''Apply''':
  * [[attachment:12751_allow_gcc_4_7.patch]] to `SAGE_ROOT`
  * mpir:
 [http://boxen.math.washington.edu/home/jdemeyer/spkg/mpir-2.4.0.p6.spkg]
  * mpfr:
 [http://boxen.math.washington.edu/home/jdemeyer/spkg/mpfr-3.1.0.p2.spkg]
 (also various misc changes)
  * ecm:
 [http://boxen.math.washington.edu/home/jdemeyer/spkg/ecm-6.3.p8.spkg]
 (also various misc changes)
  * zn_poly:
 [http://boxen.math.washington.edu/home/jdemeyer/spkg/zn_poly-0.9.p9.spkg]
 (also fixes user-supplied `CFLAGS` and `CXXFLAGS` being overridden)

--

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12751#comment:51>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to