If CC_STACKPROTECTOR_{REGULAR,STRONG} is enabled, the GCC will try to use the stack protector code of its libssp (which is forced to be linked to libc). It will fail with a compiler clean enough not to provide libssp. An internal version of libssp should be provided in the kernel tree, to prevent the kernel from accidentally use userspace code, and provide the support to build a kernel with a toolchain without libc. (While linking vmlinux.o with such a toolchain, I get symbol missing error of '__stack_chk_guard')