5 ms·
Ugh... If building the same source produces different binaries, then I'd like to know (a) what is causing the difference and (b) what other differences does it
by AlexTWithBeard 6y ago
Ugh...
If building the same source produces different binaries, then I'd like to know (a) what is causing the difference and (b) what other differences does it cause?
Being able to produce a consistent result is simply a sign of professionalism.
- sreevisakh 6y agoHow about using a different toolchain? (eg: gcc vs clang). Or even different versions of a toolchain? Or a dependency that has to be downloaded? Being able to build consistently requires way more effort than just following professional practices. One method I know is to pin everything that goes into a build - source, dependencies, toolchains, configurations and environment. Results of non-consistent build can be as simple as a difference in performance. But it could also be a malware injected through the compiler.
- AlexTWithBeard 6y agoYes, yes and yes. The toolchain and the dependencies should be pinned. Otherwise sooner or later you'll hit the customer's issue that you won't be able to reproduce - until you realize it's some subtle bug in the specific version of your compiler.
- CURLY3Y 6y agoIn Java for example you this might happen from generated classes in my case JAXB classes generated from xsd. In in javascript minimizers are not deterministic leading to different .js files. Running into this has nothing to do with professionalism.