Ehem, ARM

Johannes Pfau nospam at example.com
Fri Nov 15 11:08:58 PST 2013


Am Fri, 15 Nov 2013 09:24:53 +0100
schrieb "Joakim" <joakim at airpost.net>:

> On Friday, 15 November 2013 at 07:22:07 UTC, Paulo Pinto wrote:
> > On Friday, 15 November 2013 at 06:18:00 UTC, Joakim wrote:
> >> 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.
> >
> > Yes, have a look at an initial port of GDC to Android
> >
> > https://bitbucket.org/goshawk/gdc/wiki/GDC%20on%20Android
> 
> Thanks for the link.  It looks like Johannes Pfau took a stab at 
> getting some minimal Android support into gdc a couple years 
> back, with the handful of small patches listed here:
> 
> https://bitbucket.org/jpf/gdc/branch/android
> 
> Anyone get any farther than that?
> 
> Would it make sense to use dmd for linux/x86 to cross-compile to 
> Android/x86 or is this a job for ldc/gdc only?

There are 3 main points which need to be addressed for a solid Android
port:

* Druntime must be ported to bionic. Not difficult, but annoying as
  bionic is a mixture between bsd and posix code, so you'll have to
  edit many version statements. All compilers will benefit from that.
* You need to implement TLS support. Last time I checked there bionic
  didn't support native TLS and gcc's emulated TLS   doesn't work with
  the D GC.
* The main program in Android should always be java code, native code
  loaded as shared libraries. This is implemented in DMD now, but not
  in GDC. (And IIRC not in LDC either?)


More information about the Digitalmars-d mailing list