The Wiki says that assembly compiled by GCC into mach-o format (not sure how that differs from the Linux ELF format, but continuing...) "probably" will not run on the iPhone.

We know it does not require signed binaries.

So what exactly is the problem? Is it just the order in which you link object files together or something? Forgive me for not understanding the specifics of how this works, but it would really help if someone could explain what the binutils have to do different from "the usual."