C++ STD headers not being generated for multilib arm-elf cross compiler

Pablo Bleyer Kocik pbleyer@embedded.cl
Sun Aug 3 20:39:00 GMT 2003


  Hello.

  I am trying to build a C++ cross compiler for arm-elf under 
i686-pc-mingw32. GCC built smoothly and works perfectly, however the C++ 
library is giving me errors. These are binutils-2.14, gcc-3.3, using 
newlib-1.11.0.

  For gcc, I enabled thumb & thumb-interwork adding the custom MULTILIB 
options in t-arm-elf. Then I configured gcc with:

{gcc-dir}/configure --prefix=d:/gnu --exec-prefix=d:/gnu 
--host=i686-pc-mingw32 --target=arm-thumb-elf --enable-targets=arm-elf 
--with-cpu=arm7tdmi --enable-interwork --enable-multilib --with-newlib 
--disable-threads --disable-win32-registry --with-gcc --with-gnu-ld 
--with-gnu-as --with-stabs 
--with-headers=../newlib-1.11.0/newlib/libc/include --disable-shared 
--enable-languages=c,c++

  As I said, 'make all-gcc' built gcc without problems and it works fine as 
much as I've tested it.

  Then I built newlib configured as:

{newlib-dir}/newlib-1.11.0/configure --prefix=d:/gnu --exec-prefix=d:/gnu 
--target=arm-thumb-elf --
host=i686-pc-mingw32 --with-cpu=arm7tdmi --enable-multilib --enable-interwork -
-disable-threads --disable-shared --with-gnu-ld --enable-targets=arm-elf

  Ditto, builds & works ok for all arm, thumb & interwork compilations.

  Now, when I attempt to compile the C++ libs, the make process dies trying 
to compile libsupc++:

In file included from 
../../../../../gcc-3.3/libstdc++-v3/libsupc++/del_op.cc:31:
../../../../../gcc-3.3/libstdc++-v3/libsupc++/new:41:19: cstddef: No such 
file or directory
In file included from 
../../../../../gcc-3.3/libstdc++-v3/libsupc++/del_op.cc:31:
../../../../../gcc-3.3/libstdc++-v3/libsupc++/new:82: error: `size_t'
    undeclared in namespace `std'
../../../../../gcc-3.3/libstdc++-v3/libsupc++/new:82: error: declaration of `
    operator new' as non-function
[...lots of errors due to missing cstddef...]

  I checked out and the libstdc++/include headers are not being 
generated... I can manually generate the header files issuing a make in the 
libstdc++/include dir, however I have concerns about the multilib handling 
of the header file construction process.

  Cheers!


--                /"It would appear that we have reached the limits of
PabloBleyerKocik / what it is possible to achieve with computer technology,
  pbleyer        / although one should be careful with such statements, as
   @embedded.cl / they tend to sound pretty silly in 5 years."-J.von Neumann 



More information about the Gcc mailing list