This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Different binary outputs with GCC on windows and linux

Hello the ARM Community,

Context:
We have an STM32 project we build using the arm-none-eabi 10.3-2021.07 toolchain.
The development/debug is mainly done on Windows.
Then we came to setup a continuous integration system (on Linux server/workers), using the linux build of the same toolchain version.
Both toolchains came from developer.arm.com/.../downloads.

Problem:
Using the same source, same cmake file, same linker script, the binary outputs are 99% identical, except for a few functions that are not compiled the same way.
The disassembling shows the differences are quite light.
Both binaries seem to run flawlessly (as far as I can tell), but from a validation point of view I find it worrisome as if differences can occur some in the future could be less innocuous, and I would prefer that both binaries be the same (apart from the build date, etc., though are reproducible build should even be feasible).

Questions:

1. Does anybody stumbled in the same kind of problem?
2. Is there a known way to avoid this difference? (except running the windows toolchain on linux or vice versa)

All suggestion or welcome.
Have a nice day!