Building a cross compiler from i686 (the platform of my linux) to s390 I get the following when the bootstrap process is configuring in s390-ibm-linux/libgcc: configure:3268: /usr/ports/gcc390/build460/./gcc/xgcc -B/usr/ports/gcc390/build460/./gcc/ -B/usr/ports/gcc390/inst/s390-ibm-linux/bin/ -B/usr/ports/gcc390/inst/s390-ibm-linux/lib/ -isystem /usr/ports/gcc390/inst/s390-ibm-linux/include -isystem /usr/ports/gcc390/inst/s390-ibm-linux/sys-include -c -g -O2 conftest.c >&5 exec: 89: -m31: not found I configured with: /usr/src/gcc-4.6.0/configure --prefix=/usr/ports/gcc390/inst --target=s390-ibm-linux --host=i686-pc-linux-gnu However, once the directory is in the path, the bootstrap compiler does work as far as doing u@ubuntu:~/src/testing$ /usr/ports/gcc390/build460/gcc/xgcc -S x.c an even u@ubuntu:~/src/testing$ /usr/ports/gcc390/build460/gcc/xgcc -m31 -S x.c u@ubuntu:~/src/testing$ /usr/ports/gcc390/build460/gcc/xgcc -m64 -S x.c and what is more, the two invocations generate the expected assembler for return 0x1000000. But the error is reproducible: u@ubuntu:~/src/testing$ /usr/ports/gcc390/build460/gcc/xgcc x.c exec: 89: -m31: not found there is no 89 or c89 in the gcc directory.