So after apple unveiled their arm based cpu, many application that were initially built for x86 chips have to now be translated using Rosetta which is a binary translator, while waiting for each to company to release their software to suit arm's architecture.
What I don't understand is that since we have arm c/c++ compiler, why can't software that runs on x86 just be compiled from source to arm cpu? Wouldn't this solve the issue of using a binary translator which will be inefficient?
I'm pretty sure that I'm confusing something major here.
Thank you in advance.