Build of egcs-971031 on m68k-next-nextstep3 fails in libstc++
Toon Moene
toon@moene.indiv.nluug.nl
Sat Nov 1 15:16:00 GMT 1997
In preparation of doing a full test of the current snapshot, I
downloaded and started to build the entire egcs-971031.tar.gz
distribution (previously I only build core + g77).
Alas, the build dies as follows:
/Users/toon/Unix/compilers/egcs-971031/gcc/xgcc
-B/Users/toon/Unix/compilers/egcs-971031/gcc/ -c -g -O2
-fno-implicit-templates -I. -I./stl -I../libio -I./../libio
-nostdinc++ -DF `for N in MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC
MULCC MULCF MULFC DIVCC DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC
NECF NEFC ABS ARG POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI
POWFC SIN SINH SQRT; do echo " -D${N}"; done` \
./cinst.cc -o fcomplex.o
In file included from cmath:7,
from std/complext.h:34,
from complex:7,
from std/complext.cc:28,
from ./cinst.cc:29:
/NextDeveloper/Headers/ansi/math.h:59: warning: declaration of
`const double cos(double)'
/NextDeveloper/Headers/ansi/math.h:59: warning: conflicts with
built-in declaration `double cos(double)'
/NextDeveloper/Headers/ansi/math.h:60: warning: declaration of
`const double sin(double)'
/NextDeveloper/Headers/ansi/math.h:60: warning: conflicts with
built-in declaration `double sin(double)'
/NextDeveloper/Headers/ansi/math.h:72: warning: declaration of
`const double sqrt(double)'
/NextDeveloper/Headers/ansi/math.h:72: warning: conflicts with
built-in declaration `double sqrt(double)'
In file included from complex:7,
from std/complext.cc:28,
from ./cinst.cc:29:
std/complext.h:314: declaration of C function `double hypot(double,
double)' conflicts with
/NextDeveloper/Headers/ansi/math.h:26: previous declaration `const
double hypot(double, double)' here
make[2]: *** [bigstmp-complex] Error 1
make[2]: Leaving directory
`/Users/toon/Unix/compilers/egcs-971031/libraries/libstdc++'
make[1]: *** [all-target-libstdc++] Error 2
make[1]: Leaving directory `/Users/toon/Unix/compilers/egcs-971031'
make: *** [bootstrap] Error 2
Apparently, the declaration of `hypot' in the NEXTSTEP header file
conflicts with that in the egcs/libstc++ header file.
I don't know which one is right, but at the very least this means
that egcs doesn't build out-of-the-box on NEXTSTEP. What is the
best workaround in cases like this ?
TIA,
Toon.
More information about the Gcc
mailing list