There are a number of different toolchains available for i.MX6, and we've been hearing some confusion about which to use... To begin with, the short answer will be:
Use the one that matches your user-space
If you're building Android, you should use the Android-supplied cross-compiler. If you're building using Timesys, they'll provide you with a cross-compiler. Ditto for Ubuntu, Debian, and Buildroot.
That said, we've heard of some issues when using the Android tools to build U-Boot and the kernel, and while we can't really recommend one toolchain or another, we can tell you what we've been using:
- The LTIB toolchain for i.MX5x. Since we're still actively maintaining a number of i.MX5x projects, we've used this compiler more often than any of the others in this list. The package named
i.MX53 Linux Source Code
contains the LTIB package. If you have trouble installing LTIB, you can check our blog for some hints. - A CodeSourcery toolchain. Several of our build machines have a somewhat dated (
arm2010q1
) toolchain from CodeSourcery and are using that to build kernels. - The Freescale LTIB toolchain for i.MX6x.
- Linaro cross toolchain. We've recently begun using the Linaro
12.04
toolchain because it's easy for customers to get, easy to install, and up-to-date.