If I build the same source code, link to the same version of the same libraries, with the same tool chain ( same compiler, linker etc , GCC 4.4), with the same version of the same operating system, ( Centos 5 Linux in my case) but on two different machines;
Is it reasonable to assume that binaries produced should be identical?
The context behind this is my code has 'undefined behaviour' which 'works' on one configuration but not the other, the obvious answer is to fix this, but I would be interested to know if my assumption that binaries produced should be the identical is correct.
I notice a few hundred bytes difference in size, the location of the symbols shown with the 'nm' command differ slightly, even though the symbols are the same.