Yes you can on the android emulator. The biggest issue is compu arch in that case.
> I cannot compile a program on one version of the same distro and run it on another version of the same distro
Yes you can for the most part (unless it uses a capability provided by a newer kernel which is super rare and mostly limited to system tools, and less for "apps"). Actually that is what makes containers and flatpak possible. It even works accross different distros as long as cpu arch is the same.
If I have to go and install one, I can do that on Windows.
I can also download VirtualBox and run all Windows programs, that would mean that all Windows apps are Linux apps?
> Yes you can for the most part
You can't statically link glibc: https://github.com/cockroachdb/cockroach/issues/3392
glibc can break stuff: https://www.gamingonlinux.com/2022/08/valve-dev-understandab...
I had binaries break because the newer version if openssl was put under a slightly different name.
WINE is not even an emulator, or so its name says.