Not sure whether your problem is with creating the cross compiler, or using the cross compiler to build the kernel. At any rate, I found the easiest way for me to get a working cross compiler for an ARM target CPU, was to use
crosstool. I haven't used the cross compiler I generated to build a kernel yet, but I have compiled a substantial body of preexisting code, and had no problem running it on an ARM target. Crosstool allows you to build many different versions of gcc cross compilers, for many different target architectures.
Can you be more specific about what problem you are having?
--- rod.