> > I have $prefix/bin/$target-<cmds> files installed, > > e.g. rs6000-ibm-aix4.3.3.0-as. > > > > My path includes $prefix/bin so these new commands are now all on the > > path. > > You should have the tools installed in two locations. One as > $prefix/bin/$target-<cmds> and another as something like > $prefix/$target/bin/<cmds> . Yes - I have these in both. > > > It looks like an assembler error, how do I know if my make script is using > > correct assembler? > > You can invoke the command manually and add the "-v" option. This > will print out information about the commands that the "gcc" driver > program is invoking. I observe the following: --> $prefix/bin/$target-ld -V GNU ld version 2.16.91 20050610 Supported emulations: aixrs6 --> $prefix/bin/$target-as --version GNU assembler 2.16.91 20050610 Copyright 2005 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty. This assembler was configured for a target of `rs6000-ibm-aix4.3.3.0'. --> $prefix/$target/bin/ld -V GNU ld version 2.16.91 20050610 Supported emulations: aixrs6 --> $prefix/$target/bin/as --version GNU assembler 2.16.91 20050610 Copyright 2005 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty. This assembler was configured for a target of `rs6000-ibm-aix4.3.3.0'. I see that the same original error message was seen by the author of this bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16627 Reading through the bug report it seems that he/she had an incorrect path. However, my path is: /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/IBMDebug/bin:/cygdrive/c /WINNT/system32:/cygdrive/c/WINNT:/cygdrive/c/WINNT/System32/Wbem:/cygdrive/c/PR OGRA~1/IBM/CLIENT~1:/cygdrive/c/PROGRA~1/IBM/CLIENT~1/Shared:/cygdrive/c/PROGRA~ 1/IBM/CLIENT~1/Emulator:/cygdrive/c/Program Files/Microsoft SQL Server/80/Tools/ Binn/:/cygdrive/c/php:/cygdrive/c/Program Files/vslick/win:/cygdrive/c/mysql/bin :/usr/local/cross-tools/bin so that when I type: $ which as /usr/local/bin/as $ as --version GNU assembler 2.16.91 20050610 Copyright 2005 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty. This assembler was configured for a target of `i686-pc-cygwin'. When I installed cygwin, I simply got whatever gcc binaries came with it. Perhaps I should build gcc for host=target=i686-pc-cygwin before attempting to build the cross-compiler? I notice this also: $ uname -i unknown $ uname -p unknown Cygwin doesn't know what hardware platform or op sys I have (?!). Perhaps this confuses the configure script for gcc? Any other thoughts on why this is not working? Thanks! (I should build this all on Linux - except for that means going through our IT guys to get permission for Linux box which they won't do until they can see the benefit - which is why I am attempting to demostrate cross compilation to them using cygwin!)