On 5/3/2017 4:25 AM, Jonathan Wakely wrote:
On 3 May 2017 at 06:23, carl hansen wrote:
On Tue, May 2, 2017 at 5:02 PM, Paul Smith <p...@mad-scientist.net> wrote:
On Tue, 2017-05-02 at 18:17 -0500, Joel Sherrill wrote:
With gcc 6.3.0, we have this in our build recipe:

%define mpfr_version   2.4.2
%define mpc_version    0.8.1
%define gmp_version    4.3.2

Best thing to do is look at the contrib/download_prerequisites script
that comes with the GCC source code.

The 7.1 version says:

    gmp='gmp-6.1.0.tar.bz2'
    mpfr='mpfr-3.1.4.tar.bz2'
    mpc='mpc-1.0.3.tar.gz'
    isl='isl-0.16.1.tar.bz2'

In general, it's better to just run that script, if possible.
"it's better to just run that script"
One would think.
But 7.1 is outdated.

latest gmp is 6.1.2
latest mpfr os 3.1.5
latest isl is 0.18

The question is not about what the latest versions are, but what
versions are required, and known to work.


That's right. I was asking about the minimum. I didn't know
about download_prerequisites but that is downloading versions
significantly about the minimum documented. And they are bug
fix releases from the current versions. That leads me to believe
that script is arbitrary. What's the justification/testing that
leads to an update of that script.

Someone asked for details on what failed along my effort, so I
am repeating it and capturing details.

I started with the same versions we used with gcc 6.3.0.

%define mpfr_version   2.4.2
%define mpc_version    0.8.1
%define gmp_version    4.3.2

This failed as follows:

configure: error: Building GCC with MPFR in the source tree is only handled for 
MPFR 3.1.0+.

**Issue**: That contradicts the minimum of MPFR 2.4.2 in 
INSTALL/prerequisites.html

I bumped mpfr to 3.1.5 since that is the latest.  Then the build
failed with this:

../../../gcc-7.1.0/mpc/src/acos.c: In function 'mpc_acos':
../../../gcc-7.1.0/mpc/src/acos.c:192:19: error: 'GMP_RNDA' undeclared (first 
use in this function)
       : rnd_im == GMP_RNDA ? GMP_RNDZ
                   ^
That implied a version issue with either MPC or GMP
so I guessed at trying MPC 1.0.3. That worked. So
a set that does appear to work is:

%define mpfr_version   3.1.5
%define mpc_version    1.0.3
%define gmp_version    4.3.2

**Issue**: This result contradicts the minimum of MPC 0.8.1 in 
INSTALL/prerequisites.html

The GMP minimum version listed in INSTALL/prerequisites.html is 4.3.2
so that appears to be correct.

In the builds I did before the initial email, I bumped
GMP before MPC and thus ended up with this set which
works:

%define mpfr_version   3.1.5
%define mpc_version    1.0.3
%define gmp_version    6.1.2

My conclusion is that INSTALL/prerequisites.html is wrong on two
of the support libraries. Someone more knowledgeable will have
to narrow down the real minimum. I am just reporting what builds.

Hopefully this is enough detail to help further this discussion.

--joel




Reply via email to