This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

errors when building gcc as a crosscompiler under cygwin


Hi,

I am trying to build gcc as a crosscompiler for a sparc-sun-solaris2.7
system, with a cygwin host.

Configuring and building binutils-2.13.1did work. Configuring gcc-2.95.3
did work, too.
But when doing a make of gcc it exits with the following:

[....]
checking whether the C compiler (/home/administrator/gcc-cross/gcc/xgcc
-B/home/administrator/gcc-cross/gcc/ -B/usr/local/sparc-sun-solaris2.7/bin/
-g -O2 ) works... no
configure: error: installation or configuration problem: C compiler cannot
create executables.
make[1]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio'
make[2]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio'
if [ -z "" ]; then \
  true; \
else \
  rootpre=`pwd`/; export rootpre; \
  srcrootpre=`cd ../../../gcc-2.95.3/libio; pwd`/; export srcrootpre; \
  lib=`echo ${rootpre} | sed -e 's,^.*/\([^/][^/]*\)/$,\1,'`; \
  compiler="/home/administrator/gcc-cross/gcc/xgcc
-B/home/administrator/gcc-cross/gcc/
-B/usr/local/sparc-sun-solaris2.7/bin/"; \
  for i in `${compiler} --print-multi-lib 2>/dev/null`; do \
    dir=`echo $i | sed -e 's/;.*$//'`; \
    if [ "${dir}" = "." ]; then \
      true; \
    else \
      if [ -d ../${dir}/${lib} ]; then \
        flags=`echo $i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \
        if (cd ../${dir}/${lib}; make "SHELL=/bin/sh" "INSTALL=/bin/sh
/home/administrator/gcc-2.95.3/install-sh -c" "INSTALL_DATA=/bin/sh
/home/administrator/gcc-2.95.3/install-sh -c -m 644"
"INSTALL_PROGRAM=/bin/sh /home/administrator/gcc-2.95.3/install-sh -c "
"prefix=/usr/local" "exec_prefix=/us
r/local" "tooldir=/usr/local/sparc-sun-solaris2.7"
"gxx_include_dir=/usr/local/include/g++-3"
"libsubdir=/usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.3"
"gcc_version=2.95.3"
"gcc_version_trigger=/home/administrator/gcc-2.95.3/gcc/version.c"
"AR=sparc-sun-solaris2.7-ar" "AR_FLAGS=rc" "CC=/home/ad
ministrator/gcc-cross/gcc/xgcc -B/home/administrator/gcc-cross/gcc/
-B/usr/local/sparc-sun-solaris2.7/bin/"
"CXX=/home/administrator/gcc-cross/gcc/xgcc
-B/home/administrator/gcc-cross/gcc/
-B/usr/local/sparc-sun-solaris2.7/bin/" "CFLAGS=-g -O2" "CXXFLAGS=-g -O2"
"NM=sparc-sun-solaris2.7-nm" "RANLIB=
sparc-sun-solaris2.7-ranlib" "LIBCFLAGS=-g -O2" "LIBCXXFLAGS=-g -O2
-fno-implicit-templates" "LOADLIBES=" "LDFLAGS="
"MAKEINFO=/home/administrator/gcc-cross/texinfo/makeinfo/makeinfo " "SHLIB
=" "SHCURSES=" "RUNTESTFLAGS=" \
                        CFLAGS="-g -O2 ${flags}" \
                        CXXFLAGS="-g -O2 ${flags}" \
                        LIBCFLAGS="-g -O2 ${flags}" \
                        LIBCXXFLAGS="-g -O2 -fno-implicit-templates
${flags}" \
                        LDFLAGS=" ${flags}" \
                        all); then \
          true; \
        else \
          exit 1; \
        fi; \
      else true; \
      fi; \
    fi; \
  done; \
fi
make[2]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio'
make[2]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio'
cd tests; make all ...
make[3]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio/tests'
make[3]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio/tests'
cd dbz; make all ...
make[3]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio/dbz'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio/dbz'
cd stdio; make all ...
make[3]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio/stdio'
make[3]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio/stdio'
cd testsuite; make all ...
make[3]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio/testsuite'
make[3]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio/testsuite'
make[2]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio'
make[1]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio'
Configuring in sparc-sun-solaris2.7/libstdc++
target-mkfrag is unchanged
Created "Makefile" in
/home/administrator/gcc-cross/sparc-sun-solaris2.7/libstdc++ using
"target-mkfrag"
Adding multilib support to Makefile in ../../../gcc-2.95.3/libstdc++
multidirs=
with_multisubdir=
Configuring tests...
Created "Makefile" in
/home/administrator/gcc-cross/sparc-sun-solaris2.7/libstdc++/tests using
"../target-mkfrag"
Configuring testsuite...
Created "Makefile" in
/home/administrator/gcc-cross/sparc-sun-solaris2.7/libstdc++/testsuite
using "../target-mkfrag"
make[1]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libstdc++'
cd ../libio ; make "SHELL=/bin/sh" "INSTALL=/bin/sh
/home/administrator/gcc-2.95.3/install-sh -c" "INSTALL_DATA=/bin/sh
/home/administrator/gcc-2.95.3/install-sh -c -m 644"
"INSTALL_PROGRAM=/bin/sh /home/administrator/gcc-2.95.3/install-sh -c "
"prefix=/usr/local" "exec_prefix=/usr/local" "tooldir=/
usr/local/sparc-sun-solaris2.7" "gxx_include_dir=/usr/local/include/g++-3"
"libsubdir=/usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.3"
"gcc_version=2.95.3"
"gcc_version_trigger=/home/administrator/gcc-2.95.3/gcc/version.c"
"AR=sparc-sun-solaris2.7-ar" "AR_FLAGS=rc" "CC=/home/administrator/gcc-cro
ss/gcc/xgcc -B/home/administrator/gcc-cross/gcc/
-B/usr/local/sparc-sun-solaris2.7/bin/"
"CXX=/home/administrator/gcc-cross/gcc/xgcc
-B/home/administrator/gcc-cross/gcc/
-B/usr/local/sparc-sun-solaris2.7/bin/" "CFLAGS=-g -O2" "CXXFLAGS=-g -O2"
"NM=sparc-sun-solaris2.7-nm" "RANLIB=sparc-sun-solaris2.
7-ranlib" "LIBCFLAGS=-g -O2" "LIBCXXFLAGS=-g -O2 -fno-implicit-templates"
"LOADLIBES=" "LDFLAGS="
"MAKEINFO=/home/administrator/gcc-cross/texinfo/makeinfo/makeinfo "
"SHLIB=libstdc++.so.2.10.0" "SHCURSES=" "RUNTESTFLAGS=" iostream.list
make[2]: Entering directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio'
make[2]: `iostream.list' is up to date.
make[2]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libio'
test x"no" != xyes || \
  /home/administrator/gcc-cross/gcc/xgcc
-B/home/administrator/gcc-cross/gcc/ -B/usr/local/sparc-sun-solaris2.7/bin/
-c -g -O2 -fno-implicit-templates -I../../../gcc-2.95.3/libstdc++
-I../../../gcc-2.95.3/libstdc++/stl -I../libio
-I../../../gcc-2.95.3/libstdc++/../libio -nostdinc++   ../../../gcc-2.
95.3/libstdc++/valarray.cc -o pic/valarray.o
/home/administrator/gcc-cross/gcc/xgcc -B/home/administrator/gcc-cross/gcc/
-B/usr/local/sparc-sun-solaris2.7/bin/ -c -g -O2 -fno-implicit-templates
-I../../../gcc-2.95.3/libstdc++ -I../../../gcc-2.95.3/libstdc++/stl
-I../libio -I../../../gcc-2.95.3/libstdc++/../libio -nostdinc++
../../../gcc-2.95.
3/libstdc++/valarray.cc
In file included from /home/administrator/gcc-cross/gcc/include/new:9,
                 from /home/administrator/gcc-cross/gcc/include/new.h:6,
                 from ../../../gcc-2.95.3/libstdc++/stl/stl_algobase.h:52,
                 from ../../../gcc-2.95.3/libstdc++/stl/algorithm:30,
                 from ../../../gcc-2.95.3/libstdc++/std/std_valarray.h:41,
                 from ../../../gcc-2.95.3/libstdc++/valarray.cc:1:
/home/administrator/gcc-cross/gcc/include/exception:13: redefinition of
`struct exception'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.3/../../../../sparc-sun-solaris2.7/include/math.h:81:

previous definition here
make[1]: *** [valarray.o] Error 1
make[1]: Leaving directory
`/home/administrator/gcc-cross/sparc-sun-solaris2.7/libstdc++'
make: *** [all-target-libstdc++] Error 2



There are two errors. The first one is this:

checking whether the C compiler (/home/administrator/gcc-cross/gcc/xgcc
-B/home/administrator/gcc-cross/gcc/ -B/usr/local/sparc-sun-solaris2.7/bin/
-g -O2 ) works... no
configure: error: installation or configuration problem: C compiler cannot
create executables.

What does this mean? xgcc exists, so it should work, I think. Or am I
wrong?


The second error ist this:

In file included from /home/administrator/gcc-cross/gcc/include/new:9,
                 from /home/administrator/gcc-cross/gcc/include/new.h:6,
                 from ../../../gcc-2.95.3/libstdc++/stl/stl_algobase.h:52,
                 from ../../../gcc-2.95.3/libstdc++/stl/algorithm:30,
                 from ../../../gcc-2.95.3/libstdc++/std/std_valarray.h:41,
                 from ../../../gcc-2.95.3/libstdc++/valarray.cc:1:
/home/administrator/gcc-cross/gcc/include/exception:13: redefinition of
`struct exception'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.3/../../../../sparc-sun-solaris2.7/include/math.h:81:

previous definition here

I already read that this seems to be a problem with fixincludes. So I read
gcc-2.95.3/gcc/fixinc/README and it tells me that I should copy
"inclhack.sh" into "${builddir}/gcc/fixinc.sh" and run make again. I did
this, but it still doesn't work.

Any ideas? I am not very familiar with gcc or binutils. I hope that I am
not just too blind to see the obvious.

Marco



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]