Segger Studio on Linux does not produce equivalent hex file as Segger studio on Windows

Hi,

We are ultimately trying to move a project from Segger Studio on Windows to the make build system on Linux for CI/CD. After a lot of issues with that we have been trying to re-create the build with Segger studio on Linux but it produces a hex which is not equivalent as the one on Windows and the linux build crashes the microcontroller during initialization. 

Comparing the output files in sizes, symbols etc. I've found that no symbols are missing or added,  BSS and DATA sizes for each object file is the same. What does differ is the TEXT sizes for a few libraries, at most with around ~10 bytes.

After disassembling nrf_section_iter (as it diffed with 16 bytes in text section size) on both the object file from the Windows and Linux build and diffed them there were no diff at all though..

About 3/5 of the object files diffed in sizes.

For both Linux and Windows we used Segger studio build 5.70A and confirmed that they use the same tools and have the same build number. For Linux we have tried a later version of segger but we still se crashes in the firmware and would like to replicate the working Windows build .

Best Regards,
Andreas

Parents
  • Hi, I'm not sure if it is possible to get identical binaries with the same tool chain running on two different operating systems, as you essentially do not have identical build environments.

    Anyways, I'm not sure if this is the right way to approach the issue. There could be a problem with the code which is just masked by the windows build. Debugging the code to see why it crashes could be the easiest way forward .

    Best regards,
    Stian

Reply
  • Hi, I'm not sure if it is possible to get identical binaries with the same tool chain running on two different operating systems, as you essentially do not have identical build environments.

    Anyways, I'm not sure if this is the right way to approach the issue. There could be a problem with the code which is just masked by the windows build. Debugging the code to see why it crashes could be the easiest way forward .

    Best regards,
    Stian

Children
No Data
Related