title: what is cross compiler and cross platform?
body: <p>I am bit confused with the terms of cross platform and cross compiler. Let me be first clear about the cross platform. When people talk about cross platform it means the architecture of the CPU, i.e, X86 and X64 ? or the OS i.e windows 32 bit or Windows 64 (server or desktop)? UNIX doesn't have different flavours like 64 bit or 32 bit. Why so?  </p>
  
  <p>.NET and java is cross compiler language, what it means? When the program is compiled in .NET, we have to choose the option like X86, X64 or Any CPU. What that means? Also in setup project we have to choose the option between x86 and x64. So if the  program is compiled in x86 and msi file has been created on x64 will it run on both X64 and x86 or any one of ?</p>