Am 19.11.2009 14:58, schrieb Kai Ruottu:
Tobias Ringström wrote:
I'm trying to build a GCC 4.4.2 cross compiler for an arm-elf target
(using binutils 2.19.1) on Fedora 12 x86_64 with the following
configure command:
> ../gcc-4.4.2/configure --prefix=/opt/arm-elf-gcc-4.4.2 \
--target=arm-elf --enable-languages=c --disable-libssp
The configure command works fine, but running "make" fails with the
following error:
> make
...
checking for a 64-bit type... unsigned long long
checking for pid_t... no
checking for library containing strerror... configure: error: Link
tests are not allowed after GCC_NO_EXECUTABLES.
make[1]: *** [configure-target-libiberty] Error 1
make[1]: Leaving directory `/home/tobias/src/gcc/build/arm-eabi/gcc'
make: *** [all] Error 2
I've successfully built many earlier versions (including 4.4.1) using
the same command line without any problems. I've searched the mailing
list and the web but not managed to find anything useful.
http://gcc.gnu.org/ml/gcc-help/2009-10/msg00302.html :) I have that
problem too.
So you are doing something really wrong :(
With your $target most people use 'newlib' as the C library and if one
uses that, producing the GCC should succeed without a pre-existing
target C library. Only installing the generic newlib headers or
building newlib
with GCC (copying/symlinking 'newlib' and 'libgloss' from newlib srcs
into the main GCC src dir) are required... But then one must tell that
via the '--with-newlib' option in GCC configure!
I think you're missunderstanding our problem. We aren't linking to a C
library. gcc 4.4.2 just doesn't compile for a bare metal target (you
need that in order to be able cross-compile a C library). I think that's
really a bug, since 4.4.1 and 4.4.3 (i.e. latest revision in the 4.4 svn
branch) both build fine.
Best regards.