A cross-compiler is one that compiles binaries for architectures other than its own, such as compiling ARM binaries on a Intel’s x86 processor. A “cross compiler” executes in one environment and generates code for another . A “native compiler” generates code for its own execution environment.