The problem is that there is no 'base system' for the Linux kernel to attach to, the implementations vary widely. If one of the core BSDs were widely adopted, the practise of developers building binaries as they do for Windows and macOS would be more feasible.