I compiled a small "hello world" C program on Ubuntu 10.04 32 bit machine. Then I put the executable(a.out) on Ubuntu 12.10(64 bit) VMWare virtual machine and tried to execute it(./a.out). The OS does not identify the file and says 'No such file or directory'. But when I put the same executable on a Ubuntu 12.10(64 bit) running on a 64 bit laptop, it runs fine and I get the desired output.
The VM is running on IBM Blade Servers. I wanted to know why the results for a VM?
Ubuntu – Unable to run a 32-bit program on 64-bit VM
64-bitvirtualization
Best Answer
The message
No such file or directory
does not refer to your executable file:a.out
. Instead it refers to a helper program that’s needed to run the 32 bit dynamically linked executablea.out
.Now, I found all of these very well explained in this nice article: