ARM Cortex-M Microcontroller startup files

Iain Buclaw via Digitalmars-d digitalmars-d at puremagic.com
Mon Apr 27 00:47:17 PDT 2015


On 27 April 2015 at 09:34, Mike via Digitalmars-d
<digitalmars-d at puremagic.com> wrote:
> On Monday, 27 April 2015 at 05:22:55 UTC, Timo Sintonen wrote:
>>
>> On Monday, 27 April 2015 at 05:19:52 UTC, Timo Sintonen wrote:
>>
>> Oops, I forget to uncomment the m4 options. The correct version is
>>>
>>>
>>> And I replace the whole gcc/config/arm/t-arm-elf with this:
>>> MULTILIB_OPTIONS  += mcpu=cortex-m0/mcpu=cortex-m3/mcpu=cortex-m4
>>> mfloat-abi=hard mfpu=fpv4-sp-d16
>>> MULTILIB_DIRNAMES += cortex-m0 cortex-m3 cortex-m4
>>> MULTILIB_REQUIRED += mcpu=cortex-m0
>>> MULTILIB_REQUIRED += mcpu=cortex-m3
>>> MULTILIB_REQUIRED += mcpu=cortex-m4 /mfloat-abi=hard  /mfpu=fpv4-sp-d16
>>> MULTILIB_EXTRA_OPTS += mthumb
>
>
> The toolchain at https://launchpad.net/gcc-arm-embedded doesn't require this
> modification, so I'm wondering if there's another way.  My understanding is
> that this is unlreated to GDC itself, so we should be able to follow
> essentially the same procedure as the embedded C/C++ toolchains, right?
>
> They have their build scripts included in their source package, so I spent a
> little time analyzing their build scripts today, and I see they are using
> the following config option:
>
> "--with-multilib-list=armv6-m,armv7-m,armv7e-m,cortex-m7,armv7-r"
>
> I'm wondering if that alone will do it.  I guess I'll give it a try later
> and let you all know what I find.
>

>From what I'm reading in config.gcc, ARM does not support
--with-multilib-list= *except* for 'default' and 'aprofile'.  So
Ubuntu/Canonical must be applying local patches to get that working.

Iain.


More information about the Digitalmars-d mailing list