(Probably trivial) arm-none-eabi-gdc building problem

Johannes Pfau via D.gnu d.gnu at puremagic.com
Wed Jun 3 05:54:31 PDT 2015


On Wednesday, 3 June 2015 at 10:50:26 UTC, Mike wrote:
> On Saturday, 30 May 2015 at 16:55:14 UTC, denizzzka wrote:
>> Hi!
>>
>> I am tried to use step-by-step instructions from wiki 
>> (http://wiki.dlang.org/Bare_Metal_ARM_Cortex-M_GDC_Cross_Compiler) 
>> to build toolchain on Debian GNU/Linux 8 and got this error 
>> after execute "make -j4 all-target-libgcc":
> [snip]
>
> I just wanted to let you know that in case you couldn't get a 
> build on your host PC, there may be another way to get a GDC 
> ARM Cortex-M cross-compiler.
>
> It has come to my attention that the prebuilt binaries at 
> http://gdcproject.org/downloads are capable of creating ARM 
> Cortex-M binaries.  I just tested it myself.
>
> I used the arm-linux-gnueabihf build, and the command I used 
> for my STM32F4 (ARM Cortex-M4F) was:
> arm-gdcproject-linux-gnueabi-gdc -fno-emit-moduleinfo -frelease 
> -mthumb -mcpu=cortex-m4 -fdata-sections -ffunction-sections -c 
> start.d
>
> The key is to simply add the platform flags: -mthumb 
> -mcpu=cortex-m4
>
> I hope that helps.
>
> Mike

That's correct. All ARM GCC compilers can generate code for all 
ARM variants (the hf compiler can generate softfloat code and the 
softfloat compiler can generate hf code as well). The difference 
between the compilers are the shipped libraries. You probably 
can't use the shipped libgcc etc from these compilers for thumb 
targets.


More information about the D.gnu mailing list