Here are a couple of things I learned cross compiling:
- Especially if you are going to be cross compiling something that uses alot of libraries; keep a clean and professional workspace. This is going to require alot of custom configures (eg, setting the --prefix variable so that you don't have ARM libraries among your x86 stuff) and also alot of make file hacking to point to the special library paths you'll have set up. Be patient with it.
- Do whatever you can on a linux machine. The tools available there are alot better in my book, and it won't matter anyway if your target isn't the processor you are compiling on.
- There don't seem to be alot of differences between what the ARM compiler does and the x86 stuff does. I was expecting many more problems than presented themselves. That being said; a major bug I ran into was that when enumeration values are set, it looks like it sets the bare minimum to distinguish the value from other enumeration types. This happened to screw up a hash function, or otherwise I would never have noticed.