On 10/02/2015 02:19 PM, Jonathan Wakely wrote:
On 2 October 2015 at 11:51, dclarke@xxxxxxxxxxxxx wrote:
Dear gcc types :
It has been a while since I tried to bootstrap gcc and with the latest
production release 5.2.0 and I see on the "Prerequisites for GCC" page
that "ISL Library version 0.15, 0.14, 0.13, or 0.12.2" is required as
per https://gcc.gnu.org/install/prerequisites.html
It's not required, because it's only used for the optional Graphite
optimisations.
I therefore fetched isl 0.15 from the infrastructure ftp site :
ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.15.tar.bz2
I extracted it into the gcc 5.2.0 source tree and created a symlink
from isl-0.15 to isl thus :
# bzip2 -dc ../../src/isl-0.15.tar.bz2 | tar -xf -
# ln -s ./isl-0.15 ./isl
This results in the in-tree extracted sources for the pre-requisites :
# ls -lad gmp-6.0.0 gmp mpfr-3.1.3 mpfr mpc-1.0.3 mpc isl isl-0.15
lrwxrwxrwx 1 root root 11 Sep 21 22:14 gmp -> ./gmp-6.0.0
drwxr-xr-x 15 1001 root 70 Mar 25 2014 gmp-6.0.0
lrwxrwxrwx 1 root root 10 Oct 2 10:46 isl -> ./isl-0.15
drwxrwxr-x 9 1000 1000 187 Jun 11 10:47 isl-0.15
lrwxrwxrwx 1 root root 11 Sep 21 22:14 mpc -> ./mpc-1.0.3
drwxr-xr-x 6 1001 1001 29 Feb 16 2015 mpc-1.0.3
lrwxrwxrwx 1 root root 12 Sep 21 22:15 mpfr -> ./mpfr-3.1.3
drwxr-xr-x 9 1000 1000 35 Jun 19 19:55 mpfr-3.1.3
I then do configure in a build directory as per usual and then try
a bootstrap using my available gcc compiler thus :
mimas_# which gcc
/usr/local/gcc4/bin/gcc
mimas_# gcc --version
gcc (genunix Fri Jan 2 11:56:03 GMT 2015) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
The make process runs for hours and then fails :
.
.
.
In file included from
/usr/local/build/gcc-5.2.0/isl/include/isl/map_type.h:4:0,
from
/usr/local/build/gcc-5.2.0/isl/include/isl/set.h:13,
from ../../gcc-5.2.0/gcc/graphite.c:38:
/usr/local/build/gcc-5.2.0/isl/include/isl/ctx.h:83:17: warning: comma
at end of enumerator list [-Wpedantic]
isl_stat_ok = 0,
^
In file included from ../../gcc-5.2.0/gcc/graphite.c:88:0:
../../gcc-5.2.0/gcc/graphite-poly.h:398:43: error: 'isl_constraint' has
not been declared
extern void print_isl_constraint (FILE *, isl_constraint *);
^
../../gcc-5.2.0/gcc/graphite-poly.h:402:35: error: variable or field
'debug_isl_constraint' declared void
extern void debug_isl_constraint (isl_constraint *);
^
../../gcc-5.2.0/gcc/graphite-poly.h:402:35: error: 'isl_constraint' was
not declared in this scope
../../gcc-5.2.0/gcc/graphite-poly.h:402:51: error: expected
primary-expression before ')' token
extern void debug_isl_constraint (isl_constraint *);
^
gmake[3]: *** [graphite.o] Error 1
gmake[3]: Leaving directory
`/usr/local/build/gcc-5.2.0_SunOS5.10_sparcv9.001/gcc'
gmake[2]: *** [all-stage1-gcc] Error 2
gmake[2]: Leaving directory
`/usr/local/build/gcc-5.2.0_SunOS5.10_sparcv9.001'
gmake[1]: *** [stage1-bubble] Error 2
gmake[1]: Leaving directory
`/usr/local/build/gcc-5.2.0_SunOS5.10_sparcv9.001'
gmake: *** [all] Error 2
Wondering if isl 0.15 is really ready to go or should I use a previous
version or can I remove the isl bits entirely ?
You don't need ISL to build GCC and can remove it entirely.
Or you can run ./contrib/download_prerequisites to fetch known-good
versions (that uses isl-0.14)
This reply is somewhat disingenuous in that the online documentation
very clearly stated isl-0.15 as compatible. Easiest is to simply change
the wording to only include 0.14, but better would be to conform to the
new 0.15 function names, as 0.15 contains several bug fixes and
optimization.