We use the Linaro x86 toolchain to cross-compile full system images for our embedded target, which work great. I apply a subset of the Ubuntu patchset to Linaro gcc and gdb as well as upstream eglibc and binutils. (I omit the multilib patches and some other things that didn't seem necessary for the target.) You can find this at https://github.com/mkedwards/crosstool-ng .