cross compiling 2.95.1 failed

Urs Thuermann
Thu Sep 30 23:25:00 GMT 1999

I've tried to install gcc-2.95.1 as a cross compiler on my i686-linux
box that should generate code for the m68k-linux target.

After installing the binutils for cross development successfully (as
and ld work), I did

    $ ../gcc-2.95.1/configure --prefix=/home/urs/cross-gcc \
	--target=m68k-linux --enable-languages=c,c++
    $ make

When compiling libgcc2.a this fails with:

    do \
      echo ${name}; \
      /home/urs/cross/build-gcc/gcc/xgcc -B/home/urs/cross/build-gcc/gcc/ -B/home/urs/cross/m68k-linux/bin/ -I/home/urs/cross/m68k-linux/include -O2  -DCROSS_COMPILE -DIN_GCC     -g -O2 -I./include  -fPIC -g1  -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I../../gcc-2.95.1/gcc -I../../gcc-2.95.1/gcc/config -I../../gcc-2.95.1/gcc/../include -c -DL${name} \
    	   ../../gcc-2.95.1/gcc/libgcc2.c -o ${name}.o; \
      if [ $? -eq 0 ] ; then true; else exit 1; fi; \
      m68k-linux-ar rc tmplibgcc2.a ${name}.o; \
      rm -f ${name}.o; \
    ../../gcc-2.95.1/gcc/libgcc2.c:41: stdlib.h: No such file or directory
    ../../gcc-2.95.1/gcc/libgcc2.c:42: unistd.h: No such file or directory
The cross-gcc FAQ mentions a patch for gcc-2.8.1 for this problem.  Is
there a patch for gcc-2.95.1, too?  What is the reason, the patch is
not in the gcc-2.95.1 release?

I'd like to only install a cross compiler, assembler and linker but
without libc.

Looking at libgcc2.c I could get over the above problem by running
make CFLAGS=-Dinhibit_libc.  Is this what I am supposed to do?

But then the compilation failed at

    /home/urs/cross/build-gcc/gcc/xgcc -B/home/urs/cross/build-gcc/gcc/ -B/home/urs/cross/m68k-linux/bin/ -c -Dinhibit_libc -I. -I../../../gcc-2.95.1/libio -D_IO_MTSAFE_IO ../../../gcc-2.95.1/libio/iogetline.c
    In file included from ../../../gcc-2.95.1/libio/iogetline.c:26:
    ../../../gcc-2.95.1/libio/libioP.h:30: errno.h: No such file or directory
    In file included from ../../../gcc-2.95.1/libio/iolibio.h:1,
    		     from ../../../gcc-2.95.1/libio/libioP.h:47,
    		     from ../../../gcc-2.95.1/libio/iogetline.c:26:
    ../../../gcc-2.95.1/libio/libio.h:30: _G_config.h: No such file or directory
    ../../../gcc-2.95.1/libio/iogetline.c:27: string.h: No such file or directory

Is this for the libstdc++?  How can I disable that?


Want more information?  See the CrossGCC FAQ,
Want to unsubscribe? Send a note to

More information about the crossgcc mailing list