Most cross-$arch-gcc compilers are only suitable for building kernels since we lack "cross" glibc (and thus startfiles and target libraries). Exceptions are some crosses using newlib (cross-arm-none, cross-avr, cross-epiphany, cross-rx and cross-riscv64-elf). I've once had "hacks" to re-purpose native glibc as cross but never followed through on this due to lack of time.