Novena-RF Driver, requirement to cross-compile kernel?

I’m bringing up my Novena-RF on a Novena running Linux 4.4.0, consequently the pre-compiled driver for Linux 3.19 in Github will not work. (insmod says “insmod: ERROR: could not insert module /home/roland/Novena-RF/driver/binary/novena_rf.ko: Invalid module format” and dmesg shows “novena_rf: disagrees about version of symbol module_layout”.)

The instructions in the wiki state “This is an out of tree kernel module, it requires a cross ARM toolchain and a build of the Linux kernel.”

I’m a little surprised by the need for a build of the kernel (isn’t this why linux-headers-* packages exist?), but really don’t understand the need for a cross-compiler. Is there some reason for not simply compiling natively on the Novena?

Guessing just that it would be faster on an Intel system.

Contributions are welcomed in the form of pull requests and let me know if you’d like a wiki login to document any improvements.

Thanks, will let you know how I go.