I am experimenting with the Keil MDK-ARM toolchain (the free version), and an STM32F407 Discovery board. So far so good, were it not for a small problem. My background is with Embarcadero RAD Studio C++Builder, and with it I often use these starting lines in a header file :
#ifndef __THIS_HEADER #define __THIS_HEADER ..... float myarray[128]; #endif
This to prevent that including this header in more than one source file causes an error of multiple definition of the variable myarray.
If I do the same with the uVision compiler, the linker complains loudly about myarray being multiple defined...
Does the uVision compiler behaves differently than the RAD Studio compiler ?
Thanks,
-Fred
That does seem to be quite a common misconception.