I've spent hours, if not days figuring out how to cross compile Linux for AArch64.
I'm using Ubuntu in a VM to do this, however all guides I managed to find didn't work completely. Most of them assumed the end-user had Debian, and things are named differently there. Once I was able to get a configuration profile to be made, but I couldn't get it to be used. when I typed in
make, I got a questionnaire for x86-based systems, despite I've saved the config file with menuconfig. Then I specified the
CROSS_COMPILE parameters, then I get yet another questionnaire, with skipping a lot of things that would've been essential for my build target.
Then my Ubuntu VM needed to be reinstalled, so I'm back at almost square zero, with no idea what I needed to install to get the cross-compilation to work, or how I did specify the
CROSS_COMPILE parameter. I've installed the compiler (took hours to figure out how it's called under Ubuntu), but it has a different name when needed to be specified for cross-compilation. Maybe I've skipped something.
Yes, I've googled it multiple times, and most guides assumed the user knew a lot of quite obscure stuff. Many of them were even more than a decade old.