Compiling means that you take code then run that code trough a program that checks if the code works like intended. After that it will put out a binary/exe/whatever that you can work with further.
From wiki:
In computing, a compiler is a computer program that translates computer code written in one programming language into another language. The name "compiler" is primarily used for programs that translate source code from a high-level programming language to a low-level programming language to create an executable program. There are many different types of compilers which produce output in different useful forms.
Then think about it this way:
You install the same os, you don't get the same experience.
That's it. Like really simple.
Edit: The underlying hardware has a effect on the behavior of the os. If hardware differs, the experience differs.