Thread overview | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
November 14, 2013 Ehem, ARM | ||||
---|---|---|---|---|
| ||||
I know, I know, this question has been asked many times before. But it came up in a meeting the other day: is there any work being done on making D an ARM citizen so that _non-trivial_ D code can be ported to smartphones and the like? If so, what it the rough time frame? |
November 14, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to Chris | On Thursday, 14 November 2013 at 14:47:47 UTC, Chris wrote:
> I know, I know, this question has been asked many times before. But it came up in a meeting the other day: is there any work being done on making D an ARM citizen so that _non-trivial_ D code can be ported to smartphones and the like? If so, what it the rough time frame?
A D.arm or D.ports group?
|
November 14, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to eles | On Thursday, 14 November 2013 at 15:31:25 UTC, eles wrote:
> On Thursday, 14 November 2013 at 14:47:47 UTC, Chris wrote:
>> I know, I know, this question has been asked many times before. But it came up in a meeting the other day: is there any work being done on making D an ARM citizen so that _non-trivial_ D code can be ported to smartphones and the like? If so, what it the rough time frame?
>
> A D.arm or D.ports group?
Yes. Mobile devices cannot be ignored.
|
November 14, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to Chris | On Thursday, 14 November 2013 at 14:47:47 UTC, Chris wrote:
> I know, I know, this question has been asked many times before. But it came up in a meeting the other day: is there any work being done on making D an ARM citizen so that _non-trivial_ D code can be ported to smartphones and the like? If so, what it the rough time frame?
Hi Chris!
LDC can generate binaries for ARM but still has a major bug which prevents working exception handling. My new developer board arrived this week so I hope to solve this issue soon.
But this is only half of the story. My target is Linux/ARM which is already supported by druntime/phobos. If you target a smartphone then you also have to add Android or iOS support to druntime/phobos. I don't know if somebody is working on this topic.
Regards,
Kai
|
November 14, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to Kai Nacke | On Thursday, 14 November 2013 at 16:14:16 UTC, Kai Nacke wrote:
> On Thursday, 14 November 2013 at 14:47:47 UTC, Chris wrote:
>> I know, I know, this question has been asked many times before. But it came up in a meeting the other day: is there any work being done on making D an ARM citizen so that _non-trivial_ D code can be ported to smartphones and the like? If so, what it the rough time frame?
>
> Hi Chris!
>
> LDC can generate binaries for ARM but still has a major bug which prevents working exception handling. My new developer board arrived this week so I hope to solve this issue soon.
>
> But this is only half of the story. My target is Linux/ARM which is already supported by druntime/phobos. If you target a smartphone then you also have to add Android or iOS support to druntime/phobos. I don't know if somebody is working on this topic.
>
> Regards,
> Kai
Thanks for your reply, Kai. That's good news, however iOS and Android support is crucial. I hope D can soon be ported to ARM, it's just too important.
|
November 14, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to Chris | On 2013-11-14 17:21, Chris wrote: > Thanks for your reply, Kai. That's good news, however iOS and Android > support is crucial. I hope D can soon be ported to ARM, it's just too > important. If you want to do anything useful on iOS you need to use Objective-C libraries, for that you bascilly need this: http://michelf.ca/projects/d-objc/ Latest update, but still quite outdated: https://github.com/jacob-carlborg/dmd/tree/d-objc -- /Jacob Carlborg |
November 14, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jacob Carlborg Attachments:
| On 15 November 2013 05:14, Jacob Carlborg <doob@me.com> wrote:
> On 2013-11-14 17:21, Chris wrote:
>
> Thanks for your reply, Kai. That's good news, however iOS and Android
>> support is crucial. I hope D can soon be ported to ARM, it's just too important.
>>
>
> If you want to do anything useful on iOS you need to use Objective-C libraries, for that you bascilly need this:
>
> http://michelf.ca/projects/d-objc/
>
> Latest update, but still quite outdated: https://github.com/jacob- carlborg/dmd/tree/d-objc
Very good point. I wonder if there's room to make a push for this in 2.065.
|
November 15, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to Kai Nacke | On 11/14/2013 05:14 PM, Kai Nacke wrote:
> But this is only half of the story. My target is Linux/ARM which is
> already supported by druntime/phobos. If you target a smartphone then
> you also have to add Android or iOS support to druntime/phobos.
Currently version (linux) in druntime is equivalent to glibc.
Porting druntime to bionic or newlib might be quite an effort but I have no concrete idea what issues to expect.
|
November 15, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jacob Carlborg | On 2013-11-14 19:14:03 +0000, Jacob Carlborg <doob@me.com> said: > On 2013-11-14 17:21, Chris wrote: > >> Thanks for your reply, Kai. That's good news, however iOS and Android >> support is crucial. I hope D can soon be ported to ARM, it's just too >> important. > > If you want to do anything useful on iOS you need to use Objective-C libraries, for that you bascilly need this: > > http://michelf.ca/projects/d-objc/ > > Latest update, but still quite outdated: https://github.com/jacob-carlborg/dmd/tree/d-objc Still no modern runtime support I'd guess? With support only for the legacy runtime you're stuck compiling for 32-bit OS X only; 32-bit iOS uses the modern runtime. And since the DMD backend won't emit ARM code, if I were still working on this the first thing I'd do is rebase everything to work on top of LDC. Once upon a time, I did port a D game to iOS. I translated it to C++. But the amount of Objective-C code was pretty minimal at the end. If I had an ARM-capable D compiler at that time, even with no Objective-C support, I could have lived happily with D. http://michelf.ca/projects/tumiki-fighters/ -- Michel Fortin michel.fortin@michelf.ca http://michelf.ca |
November 15, 2013 Re: Ehem, ARM | ||||
---|---|---|---|---|
| ||||
Posted in reply to Martin Nowak | On Friday, 15 November 2013 at 00:18:50 UTC, Martin Nowak wrote: > On 11/14/2013 05:14 PM, Kai Nacke wrote: >> But this is only half of the story. My target is Linux/ARM which is >> already supported by druntime/phobos. If you target a smartphone then >> you also have to add Android or iOS support to druntime/phobos. > > Currently version (linux) in druntime is equivalent to glibc. > Porting druntime to bionic or newlib might be quite an effort but I have no concrete idea what issues to expect. As Kai says, has anyone worked on getting D running on Android before? I've been thinking about attempting an Android port for years. I thought I'd spin up some x86 VMs this weekend and take a crack at getting D working on Android/x86 (http://www.android-x86.org/) as a first step. If anyone has started on this already, I could chip in on their branch. Also, does dmd have any support for cross-compilation or is it better to stick to ldc/gdc when cross compiling to Android? On a related note, it looks like Rust was ported to Android/ARM earlier this year: https://github.com/mozilla/rust/wiki/Doc-building-for-android |
Copyright © 1999-2021 by the D Language Foundation