BSD's kernel ABI is not stable. Stability is only attempted in a best-effort basis for a single major version. Like how FreeBSD only tries to ensure kernel ABI stability in Release 14.0 and its updates but upgrading to Release 15 is considered an ABI break.
Still, it's much better than Linux breaking ABI in every release.
There's also a third reason on why not BSD:
Practically all OSS projects assume you are building on Linux. Most complex programmes like LibreOffice, Chromium, Firefox, ffmpeg etc absolutely will not build on the BSDs if you are following the build instructions provided by the projects as-is..
In some instances the failure is caused by something simple like using BSD make instead of GNU make. But unfortunately for the other 99% of the time it's something very complicated that requires significant patches to the project itself because of assumptions that the project is built against glibc instead of the BSD's libc, or using gcc instead of llvm and clang, etc.