Everything can be compiled natively on JTK1.
I would be tempted to cross-compile u-boot, but I don’t think this is necessary. One would typically use the arm-none-eabihf compiler for a boot loader, but the arm-linux-eabihf probably works just as well (I think the arm-none-eabihf would be more efficient). In any case, you wouldn’t need to manually build the tool chains, as they are available pre-built from Linaro. For kernel and u-boot cross-compile you would only need the compilers, none of the linker or library side gets involved. One exception might be if you wanted to use an older 4.9 compiler, as I only see newer versions available as a pre-compiled binary (you’d have to build the compiler, but wouldn’t need anything else). If you happen to be running Ubuntu on your desktop though, these are available directly through the package manager (I use Fedora so I have to build my own if I don’t use the newer cross-compiler versions).
You can find current pre-compiled binaries for Linaro here: