By your definition, Microsoft WIndows must not be an OS. After all, it can't compile itself, because it doesn't come with a compiler.
Nor is Android; I doubt that it even has a compiler. Even app development for Android is done with a cross compiler on a different system.
Of course, all of those dilemmas are false, because in reality, the definition of "OS" simply does not contain a requirement for self-compilation.