building gcc cross compiler:error: cannot find crti.o, configured --with-newlib

sindhu selvam
Fri Jul 24 18:37:00 GMT 2015

I am trying to build a GCC (version 4.9.3)cross compiler on my windows
machine using Cygwin. I am using the source package that came along
with cygwin.

I have already built binutils version 2.25 and installed, this is
through cygwin as well.

binutils configuration used:

../binutils-x.y.z/configure --target=$TARGET --prefix="$PREFIX"
--with-sysroot --disable-nls --disable-werror

I then configured GCC with the following configuration

../gcc-x.y.z/configure --target=$TARGET --prefix="$PREFIX"
--disable-nls --enable-languages=c,c++ --without-headers
--disable-threads --with-newlib

Then the make all-gcc went through fine.

I am getting error when I try to run make all-target-libgcc

Following is the error that I encounter.

# @multilib_flags@ is still needed because this may use
# /build/gcc/./gcc/xgcc -B/build/gcc/./gcc/
-B/usr/local/cross/x86_64-pc-linux-gnu/lib/ -isystem
/usr/local/cross/x86_64-pc-linux-gnu/include -isystem
# @multilib_dir@ is not really necessary, but sometimes it has
# more uses than just a directory name.
/bin/sh ../../../../../usr/src/gcc-4.9.3-1.src/gcc-4.9.3/libgcc/../mkinstalldirs
/build/gcc/./gcc/xgcc -B/build/gcc/./gcc/
-B/usr/local/cross/x86_64-pc-linux-gnu/lib/ -isystem
/usr/local/cross/x86_64-pc-linux-gnu/include -isystem
si2_s.o _bswapdi2_s.o _clrsbsi2_s.o _clrsbdi2_s.o _fixunssfsi_s.o
_fixunsdfsi_s.o _fixunsxfsi_s.o _fixsfdi_s.o _fixdfdi_s.o _fixxfdi_s.o
_fixunssfdi_s.o _fixunsdfdi_s.o _fixunsxfdi_s.o _floatdisf_s.o
_floatdidf_s.o _floatdixf_s.o _
/usr/local/cross/x86_64-pc-linux-gnu/bin/ld: cannot find crti.o: No
such file or directory
/usr/local/cross/x86_64-pc-linux-gnu/bin/ld: cannot find -lc
/usr/local/cross/x86_64-pc-linux-gnu/bin/ld: cannot find crtn.o: No
such file or directory
collect2: error: ld returned 1 exit status
Makefile:937: recipe for target '' failed
make[3]: *** [] Error 1
make[3]: Leaving directory '/build/gcc/x86_64-pc-linux-gnu/32/libgcc'
Makefile:1136: recipe for target 'multi-do' failed
make[2]: *** [multi-do] Error 1
make[2]: Leaving directory '/build/gcc/x86_64-pc-linux-gnu/libgcc'
Makefile:114: recipe for target 'all-multi' failed
make[1]: *** [all-multi] Error 2
make[1]: Leaving directory '/build/gcc/x86_64-pc-linux-gnu/libgcc'
Makefile:11913: recipe for target 'all-target-libgcc' failed
make: *** [all-target-libgcc] Error 2

Why am I getting this error. What could I do to overcome this problem?

Thank you,

More information about the Gcc-help mailing list