Where is the arm-none-eabi target?
IGotD-
nise at nise.com
Fri Mar 13 21:47:02 UTC 2020
On Friday, 13 March 2020 at 17:06:03 UTC, kinke wrote:
> On Friday, 13 March 2020 at 14:41:03 UTC, IGotD- wrote:
>> The problem is when using thumb-none-linux-eabi, the compiler
>> automatically inserts D version identifiers like Posix.
>
> Yes, Linux is a Posix target.
>
>> but still for completeness shouldn't the non OS target be
>> supported
>
> It is and doesn't predefine Posix etc. then; try
> `-mtriple=thumb--none-eabi` (or `thumb-unknown-eabi` etc.).
>
>> and why aren't there any warning messages when using the
>> arm-none-eabi target?
>
> Probably because it works just fine, at least it does for me
> with LDC v1.20 on Windows - `ldc2 -c -mtriple=arm-none-eabi
> hello.d -v && ls -l hello.o`. `-v` shows the expanded triple
> (3rd line, => arm-none-unknown-eabi).
You are right, any other file works with arm-none-eabi.
Actually this might be more related to druntime rather than
arm-none-eabi.
Try.
cd ldc/runtime/druntime/src (where your druntime is located).
ldc2 -c --output-o -conf= -w -de -dip1000 -mtriple=arm-none-eabi
-O3 -release -preview=fieldwise -od=/tmp/objects -op core/atomic.d
ls /tmp/objects/core, and there is no atomic.o file.
the compiler just gives a warning: Warning: Assuming critical
section size = 40 bytes
not sure what this is about.
change -mtriple to arm-none-linux-eabi and the object file is
created.
I've tried to find if some identifier is missing because of this
but I haven't found any also atomic should only be CPU
architecture dependent.
More information about the digitalmars-d-ldc
mailing list