Ticket #11081: 11081-dont-use_GCC_4_3_2.patch

File 11081-dont-use_GCC_4_3_2.patch, 3.4 KB (added by drkirkby, 10 years ago)

Patch to advise uses not to use gcc 4.3.2, which Bill Hart said on sage-devel today that it mis-compiles MPIR on x64.

  • doc/en/installation/source.rst

    # HG changeset patch
    # User David Kirkby <david.kirkby@onetel.net>
    # Date 1302046068 -3600
    # Node ID cca0bd9a5b4502910457a97b7b48d7764fd55fc4
    # Parent  207e437fecab99e5468e043dde7fcc6b7f8e08b0
    #11081 Advise users not to use gcc 4.3.2. At a later date, this should be enforced with a patch to 'prereq' script
    
    diff -r 207e437fecab -r cca0bd9a5b45 doc/en/installation/source.rst
    a b  
    4747
    4848::
    4949
    50        gcc        (Version 4.0.1 or later)
    51        g++        (Version 4.0.1 or later)
    52        gfortran   (Version 4.0.1 or later)
     50       gcc        (Version 4.0.1 or later, but do not use version 4.3.2)
     51       g++        (Version 4.0.1 or later, but do not use version 4.3.2)
     52       gfortran   (Version 4.0.1 or later, but do not use version 4.3.2)
    5353       make       (GNU make, version 3.80 or later)
    5454       m4         
    5555       perl       (Version 5.8.0 or later)
     
    164164   does not raise an ``ImportError`` then it worked.
    165165
    166166-  Sage developers tend to use fairly recent versions of gcc, but
    167    Sage should compile with any gcc of at least version 4.0.1
     167   Sage should compile with almost any gcc of at least version 4.0.1. 
     168   However, version 4.3.2 of gcc should not be used, as this mis-compiles MPIR
     169   on 64-bit builds.
     170
    168171   If you are interested in working on support for commerical compilers
    169172   from `HP <http://docs.hp.com/en/5966-9844/ch01s03.html>`_,
    170173   `IBM <http://www-01.ibm.com/software/awdtools/xlcpp/>`_,
     
    212215specify another Fortran compiler via the variable :envvar:`SAGE_FORTRAN`.
    213216
    214217On operating systems such as `AIX <http://en.wikipedia.org/wiki/IBM_AIX>`_,
    215 `HP-UX <http://en.wikipedia.org/wiki/HP-UX>`_, and Solaris, where both 32-bit and
     218`HP-UX <http://en.wikipedia.org/wiki/HP-UX>`_, Solaris and OpenSolaris, where both 32-bit and
    21621964-bit builds are supported, the library path variable
    217220:envvar:`SAGE_FORTRAN_LIB` must point to the 32-bit library if you are
    218221building Sage in 32-bit. Also, :envvar:`SAGE_FORTRAN_LIB` must point to a
     
    437440                                                              0<
    438441            by: G.-M. Greuel, G. Pfister, H. Schoenemann        \   Feb 2010
    439442       FB Mathematik der Universitaet, D-67653 Kaiserslautern    \
    440        // ** executing /usr/local/sage/sage-0.8.2/bin/LIB/.singularrc
    441443       [ctrl-d]
    442444       > Auf Wiedersehen.
    443445       sage:
     
    627629  :envvar:`SAGE_PORT` to something non-empty (and expect to run into
    628630  problems).
    629631
    630 - :envvar:`SAGE_USE_OLD_GCC` - the Sage build process requires version
    631   4.0.1 of gcc.  If the most recent version of gcc is 3.4.x and you
     632 :envvar:`SAGE_USE_OLD_GCC` - the Sage build process requires
     633  gcc with a version number of at least 4.0.1 -  although gcc 4.3.2 should be avoided.
     634  If the most recent version of gcc on your system is the older 3.4.x series and you
    632635  want to try building anyway, then set :envvar:`SAGE_USE_OLD_GCC` to
    633636  something non-empty. Expect the build to fail in this case: Sage is
    634   only guaranteed to build using gcc 4.0.1 or later, so if you insist
    635   on working with gcc 3.4.x, you will have to modify some source code
     637  only guaranteed to build using gcc 4.0.1 or later, (excluding gcc 4.3.2),
     638  so if you insist on working with gcc 3.4.x, you will have to modify some source code
    636639  to get things to work.
    637640
    638641