Why do I get a "No such file or directory" error when trying to run an executable that clearly exists?

Yeah, I’ve seen that too, and building on what @prynka.chatterjee said, in my case, the “no such file or directory” issue came from missing shared libraries rather than architecture. I used ldd ./arm-mingw32ce-g++ and noticed a few not found entries. The executable had runtime dependencies that weren’t installed on my system. So even though the binary was present and had the right architecture, it still refused to run because the system couldn’t load its dependencies, same error, different root cause.