his page briefly describes how GNU Modula-2 can be built as a cross compiler. It should not be considered as a definitive source for cross compiling, but serves to show how it can be done given the tar balls listed here. It provides a script which builds the binutils, glibc, C and Modula-2 compilers from source for the purpose of cross compiling to the strongarm processor.
The purpose of this project was to stress test the GNU Modula-2 compiler by building it as a cross compiler for an iPAQ H3850.
The tar files you need are listed here. All these tar files except gcc+gm2 and the arm headers are unmodified copies of the GNU tools. Therefore depending upon where you are you might want to download these files from a local mirror. The arm headers were taken from the linux-kernel-2.4.18 and configured for a SA1110 arm processor (the one that is in the iPAQ :-). The headers are placed here simply for convenience. Note the tool chain is large, about 60 Mbytes of compressed source.
To cut to the chase, download everything and examine the script build-all-tools.
It would be sensible to check the script before you run it - and perhaps use it as an install guide.
It might be a good idea to perform a dry run of the script and run the commands by hand - and only execute the make install as root. I’ve run it on my machine without a problem, but your mileage might vary. If are successful in building GNU Modula-2 as a cross compiler please would you send a brief email to the GNU Modula-2 mailing list.
Note that the maintainers of glibc say that you need gcc-2.95 series compiler to build glibc-2.2.4. We are using gcc-3.2, but we are only building a static libc with obvious consequences for large executables.
This document was produced using groff-1.22.