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

Gcc-arm-none-eabi windows and linux compiling

Hello all,

I am working on a project that uses Makefile. Until now, we compiled the project on Windows with GNU GCC 7.2.1 compiler. We downloaded the compiler from "">developer.arm.com/.../downloads". We are using "gcc-arm-none-eabi-7-2017-q4-major-win32.exe". That is the 32bit version of GCC.

For testing on Linux, we compiled the project using Ubuntu 20.04 GNU GCC 7.2.1. We downloaded the compiler from "">developer.arm.com/.../downloads". We are using "gcc-arm-none-eabi-7-2017-q4-major-linux.tar.bz2". That is a 64bit version of GCC (32bit version of GCC for Linux is not available on that website).

Somehow, the outputs of Linux is not performing the same performance as the outputs of Windows.

There are some differences between Linux and Windows outputs. For example; while Windows aligns sections to 4byte, Linux aligns to 8 bytes; while Windows maps functions&variables to 32bit addresses, Linux maps functions&variables to 64bit addresses.

Could the difference in the alignment&mapping, cause the above-mentioned performance inequality?

Is there any way to use "gcc-arm-none-eabi-7-2017-q4-major-linux.tar.bz2" and create outputs as 32bit on Linux? ( as i understand from the documents, -m32 is fit for this purpose, however, it is not supported in gcc-arm-none-eabi)

Thank you, Best Regards,