ARM Cortex-M Microcontroller startup files

Timo Sintonen via Digitalmars-d digitalmars-d at puremagic.com
Mon Apr 27 05:53:42 PDT 2015


On Monday, 27 April 2015 at 10:46:09 UTC, Jens Bauer wrote:
> On Monday, 27 April 2015 at 05:19:52 UTC, Timo Sintonen wrote:

>>
>> I have also tried for years to build a working multilib 
>> without success. {snip}
>>
>> Please note: This is the first time ever I have suceeded. This 
>> will not work with any gcc before april. An older gcc will not 
>> build m4 or it may even not pass configuring.
>
> Does this mean that we'll need to use GCC-5.1.0 (released April 
> 22, 2015) ?
> (I'm currently on 4.9.2, which is from october 2014)

YES! As I mentioned I used gcc 6 head but but I think there has 
not been big changes since 5.1 release.
I have _never_ succeeded with any previous version.

I have never had any success when using any --with options like 
--with-cpu or --with-multilib. Most of the time they result to a 
compiler that has different defaults. The configure script for 
libgcc uses this default compiler in its tests and it always 
fails somewhere because of wrong defaults.

It is also possible the libraries may have wrong set of compiler 
flags even they build correctly. For example: once I got a 
library set built for arch 5. This is totally ok because arch 7 
is compatible with arch 5. There was no issues before I tried 
exceptions. They use callback from libgcc to druntime and this 
failed because of arch mismatch. Took 3 months to find out.

So it is very important that the libraries will be compiled with 
the same compiler flags that the application. This is also true 
when we will make prebuilt libdruntime. The way I have done 
allows to pass correct flags to each library.

Anyway, now we are here to test which is working and which is 
not. I hope that we geet reports from as many people as possible. 
The working methods will go to the wiki page.


More information about the Digitalmars-d mailing list